解决Springboot打包jar过大问题
- 0
#讨论区
00条评论
实时对话
loading...
最近Jenkins打包springboot项目的jar包都80M以上,在部署时候,就算压缩以后也很大,经过资料查找,最终采用瘦包部署
build
-plugins
-plugin
下的spring-boot-maven-plugin
添加一个依赖xml
mvn clean package
发现jar包只有一百多KB
打包后的jar包只包含了我们自己编写的代码,依赖都不在jar包里,那么我们如何去运行它,让他去找到依赖呢。我们有2种方式在服务器上运行jar包
~/.m2/repository
目录java -jar my-app.jar
java -Dthin.root=. -jar my-app.jar
java -Dthin.dryrun=true -Dthin.root=. -jar my-app.jar
我们使用插件在本地把依赖构建好
xml
把target/thin/root/repository
目录上传到服务器
运行命令java -Dthin.root=. -jar my-app.jar
即可
<!--pom.xml-->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.springframework.boot.experimental</groupId>
<artifactId>spring-boot-thin-layout</artifactId>
<version>1.0.28.RELEASE</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
<!--pom.xml-->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.springframework.boot.experimental</groupId>
<artifactId>spring-boot-thin-layout</artifactId>
<version>1.0.28.RELEASE</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.springframework.boot.experimental</groupId>
<artifactId>spring-boot-thin-maven-plugin</artifactId>
<version>1.0.28.RELEASE</version>
<executions>
<execution>
<id>resolve</id>
<goals>
<goal>resolve</goal>
</goals>
<inherited>false</inherited>
</execution>
</executions>
</plugin>
</plugins>
</build>