文章目录
SpringBoot 依赖分离打包
- 在我们进行项目开发的时候,有很多依赖,但是修改代码重新部署打包时依赖都会重新打包,当项目迭代太多会导致jar包很大,上传服务器时间很久,下面就是将平时未修改的依赖分离出来,只打包我们自己修改的部分。
第一步:排除所有maven依赖的jar包
-
在spring-boot-maven-plugin下新增配置,排除掉所有jar包引用
-
-
pom部分
<configuration>
<includes>
<include>
<groupId>null</groupId>
<artifactId>null</artifactId>
</include>
</includes>
<layout>ZIP</layout>
</configuration>
第二步: 新增jar包构建目录lib
- 在build->plugins中新增plugin
<!-- 拷贝项目所有依赖jar文件到构建lib目录下 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/lib</outputDirectory>
<excludeTransitive>false</excludeTransitive>
<stripVersion>false</stripVersion>
<silent>true</silent>
</configuration>
</execution>
</executions>
</plugin>
第四部: 构建项目后得到如下结构
第五步: 将lib以及jar包上传到服务器同一目录下,jar包与lib保持在同一目录级别下
第六步:在启动参数中增加:-Dloader.path=./lib
- -Dloader.path=./lib 参数解析:
Dloader.path JVM 系统属性,用于指定类加载器的搜索路径。-Dloader.path=./lib 将 ./lib 目录设置为类加载器的路径
第七步:到此已经完成依赖jar包的分离
- 以后部署只需要替换jar包就行如果有修改lib包中相关的jar包就只需要替换修改的部分即可,不用每次都全量更新。