博主
258
258
258
258
专辑

第十九节 SpringBoot微服务项目Maven打包到指定目录

亮子 2023-03-14 04:05:36 824 0 0 0

1、优势

效果图:

图片alt

这样打包的优势:
1.每个业务模块(可以单独启动)的jar包与它所依赖的库分离,业务jar包更轻量,不仅运行时节省内存,而且方便日后的更新部署
2.各个业务模块之间依赖的库文件中有很多是相同的,打到同一个lib目录(而不是各自的lib目录),可以节省空间

2、添加存储目录

    <properties>
        <java.version>1.8</java.version>
        <spring-cloud-alibaba.version>2.2.2.RELEASE</spring-cloud-alibaba.version>
        <jar.out.dir>/server/app</jar.out.dir>
    </properties>

2、在build-》plugins中添加如下代码:

            <!-- Spring Boot模块jar构建 -->
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <includes>
                        <!-- 不存在的include引用,相当于排除所有maven依赖jar,没有任何三方jar文件打入输出jar -->
                        <include>
                            <groupId>null</groupId>
                            <artifactId>null</artifactId>
                        </include>
                    </includes>
                    <layout>ZIP</layout>
                    <!--
                    基于maven-jar-plugin输出微服务jar文件进行二次spring boot重新打包文件的输出目录
                    所有微服务构建输出jar文件统一输出到与lib同一个目录,便于共同引用同一个lib目录
                    详见各子模块中boot-jar-output属性定义
                    -->
                    <!--  -->
                    <outputDirectory>${jar.out.dir}</outputDirectory>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>