赞
踩
通常 Spring Boot 程序在构建的时候会把依赖的jar包也到打包在内部,导致文件大小动辄 50M、100M 这样子,如今迭代发布时常有的事情,每次都上传一个如此庞大的文件,会浪费很多时间,瘦身后会把依赖的jar文件放到jar包外部目录,只需要首次发布的时候需要上传全量文件,后面更新只需要更新源代码编译的jar即可。
方便测试只添加了一个web依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
执行 mvn clean package 打包应用
应用打包后的相关依赖的jar会被放入jar包内的BOOT-INF/lib目录下,使用WinRAR可以进入jar包内部,或者直接解压jar包
如下图
在spring-boot-maven-plugin插件中通过includes标签配置忽略依赖包,需要在configuration.mainClass里面指定应用的启动类,如下。
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>com.ljm.webdemo.WebdemoApplication</mainClass>
<layout>ZIP</layout>
<includes>
<include>
<groupId>nothing</groupId>
<artifactId>nothing</artifactId>
</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
使用mvn clean package打包,可以看到改造前大小为16.5M,改造后大小为113KB了。
java -Dloader.path=lib -jar webdemo.jar
只针对springboot版本必须在2.3以上,如果不是,请升级。
创作不易,要是觉得我写的对你有点帮助的话,麻烦在gitee上帮我点下 Star
【SpringBoot框架篇】其它文章如下,后续会继续更新。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。