SpringBoot增量/瘦身部署jar包的方式
背景
SpringBoot 项目的部署一般采用全量jar 包方式部署相关项目,如果我们对相关的Contrller\Service\Dao\Mapper 层进行相关业务调整就需要重新编译全量jar 包(包大小约为200M左右)实在太麻烦了。
本文:重点讲解使用SpringBoot 的增量/瘦身部署方式,把引用的jar 和静态资源分离。
分离Jar包
SpringBoot 全量jar 大小截图
点击SpringBoot 项目的Maven ->package 打包指令。
SpringBoot 增量/瘦身jar 大小截图
点击SpringBoot 项目的Maven ->package 打包指令。
如何使用maven-dependency-plugin分离jar包
第一步:在SpringBoot 项目中pom.xml文件的plugins 标签下添加plugin 依赖。
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>copy</id> <phase>package</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <!--指定的依赖路径--> <outputDirectory> ${project.build.directory}/lib </outputDirectory> </configuration> </execution> </executions> </plugin>
第二步:修改SpringBoot 项目默认:spring-boot-maven-plugin插件,添加如下配置。
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <executable>true</executable> <!--必须为ZIP模式,不指定的话-Dloader.path不生效--> <layout>ZIP</layout> <!-- 打包的时候排除的jar包--> <includes> <include> <groupId>non-exists</groupId> <artifactId>non-exists</artifactId> </include> </includes> </configuration> </plugin>
分离配置文件
在lib同目录下创建resource文件夹,进入代码resource文件夹内复制application.yml文件到resource文件下。
SpringBoot 项目启动
在Spring Boot 可执行jar 包所在的文件目录打开窗口,执行如下指令:
E:\github_workspace\SpringBootCase\SpringBoot-MyBatisPlus\target>java -Dloader.path=./lib -jar .\SpringBoot-MyBatisPlus-1.0-SNAPSHOT.jar
CMD 窗口输出:
如果涉及Spring Boot 项目涉及application.yml 文件但又不涉及后端逻辑代码的修改,可以通知指定配置文件方式,启动Spring Boot项目,执行如下指令:
java -Dloader.path=./lib -Dspring.config.location=./resource/application.yml -jar .\SpringBoot-MyBatisPlus-1.0-SNAPSHOT.jar
CMD 窗口输出:
以上就是SpringBoot增量/瘦身部署jar包的方式的详细内容,更多关于SpringBoot 增量/瘦身部署jar 包的资料请关注脚本之家其它相关文章!
相关文章
java操作(DOM、SAX、JDOM、DOM4J)xml方式的四种比较与详解
java中四种操作(DOM、SAX、JDOM、DOM4J)xml方式的比较与详解2008-10-10java Iterator接口和LIstIterator接口分析
这篇文章主要介绍了java Iterator接口和LIstIterator接口分析的相关资料,需要的朋友可以参考下2017-05-05Mybatis查询返回Map<String,Object>类型实例详解
这篇文章主要给大家介绍了关于Mybatis查询返回Map<String,Object>类型的相关资料,平时没太注意怎么用,今天又遇到了总结记录一下,方便以后处理此类问题,需要的朋友可以参考下2022-07-07kafka并发写大消息异常TimeoutException排查记录
这篇文章主要为大家介绍了kafka并发写大消息异常TimeoutException的排查记录及解决方案,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步2022-02-02
最新评论