首页 > 编程语言 > 详细

java maven 解决SpringBoot jar包大小优化问题

时间:2021-03-11 22:21:02      阅读:148      评论:0      收藏:0      [点我收藏+]

这里提供两种解决方案:

清理 Maven 依赖中无用依赖( Unused declared dependencies )。
打包时排除所有 jar 依赖改为运行时外部引用。
方案一:清理Maven依赖中无用依赖
可以使用 mvn dependency:analyze 命令对项目进行分析,并以此作为参考来剔除无用依赖。


下面对图中的 Used undeclared dependencies found 和 Unused declared dependencies found 作出解释

技术分享图片

Used undeclared dependencies found
意为项目中有些我们使用到的 jar 包依赖并没有在 pom 文件中显示声明,这意味着这些包是通过引用传递 1 而来的。

这个时候我们可以选择显示声明他们。

Unused declared dependencies found
意为项目中存在显示声明的依赖我们在实际的应用中并没有使用到。我们可以将他们从 pom 文件中剔除。

注意: 这里虽然说实际代码中没有用到,但并不意味着一定没有用到,这里只是说 main/java 和 test 中没有使用到,具体剔除方案还需要自己衡量,这个结果只能作为参照。

方案二:外部引用 jar 包(立竿见影)
可有效缩减 jar 包大小,进而解决 Jar 包太大引发的打包慢,上传慢等问题。

将原本 jar 包解压缩找到 BOOT-INF 下的 lib 目录考出,该目录下包含所需所有 jar包。


在 pom 中 spring-boot-maven-plugin 打包插件设置打包时排除所有 jar 包

<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
<layout>ZIP</layout>
<includes>
<include>
<!-- 排除所有Jar -->
<groupId>nothing</groupId>
<artifactId>nothing</artifactId>
</include>
</includes>
</configuration>
</plugin>

此时打包,会发现 jar 包大小锐减,将 jar 包与 lib 放在同一目录下执行命令
java -Dloader.path="lib/" -jar yourjarname.jar 即可。
————————————————
版权声明:本文为CSDN博主「dying 搁浅」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/w903328615/article/details/87861139

java maven 解决SpringBoot jar包大小优化问题

原文:https://www.cnblogs.com/heihei1990/p/14520001.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!