SpringBoot实现lib包与代码本体分离
SpringBoot实现lib包与代码本体分离
最近在编写自己项目的时候,发现部署的过程中,打的Jar
包过大,导致传输到服务器上的时候速度有点缓慢。
要是平常也就算了,那天我想着就一个小问题就没有本地验证了,直接发上服务器。
这是一个不好的习惯,大家不要学 一定要保证代码验证通过后再进行发布部署
结果部署后,发现改的不对,连着这样搞了三次。
这三次上传的时间,我就觉得等得没有必要了,都是自己的源代码改动,没有涉及到依赖包的新增修改,打出来的Jar
包还是170M
多,也难怪别人说Java
,SpringBoot
重呢
那么结合这次不愉快的体验,我了方法对Jar
包进行优化瘦身,也就是将其中的lib
包从jar
包本体中剥离出来
看看是如何做的吧
没错,既然是打Jar
包,那么肯定是我们的构建工具Maven
了,我们来看看pom.xml
文件,要经过哪些修改,才可以达成我们想要的效果
首先是我们的org.springframework.boot
插件
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
<layout>ZIP</layout>
<jvmArguments>=UTF-8</jvmArguments>
<includes>
<include>
<groupId>nothing</groupId>
<artifactId>nothing</artifactId>
</include>
</includes>
</configuration>
</plugin>
只需要这样,就能将Jar
包中的lib
包给剔除,那么现在,我们来重新打包一下,结果如下
如果我们的lib
包有改动,换了依赖,或者新增了依赖,那么我们就需要更新部署的lib
包。但是,在上图中,我们没有lib
包,那该怎么办,我们现在还需要将lib
包生成出来,放在Jar
包的同级目录下
这时候,我们需要一个新的Maven
构建插件,如下
<plugin>
<groupId>org.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executi>
<execution>
<id>copy</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<!--指定的依赖路径-->
<outputDirectory>
${project.build.directory}/lib
</outputDirectory>
<excludeScope>provided</excludeScope>
</configuration>
</execution>
</executi>
</plugin>
添加上了,我们再来重新打包一下,这一次应该是没有问题了,看下结果
完美,成功分离
那么如何去启动这个Jar
包呢,我直接下面的命令试了一下
java -jar banmoon-web-base.jar
发现不行,没到对应的包啊
那么该如何启动这个Jar
包呢,这个时候,需要换一种Jar
启动脚本,我们换这个试试看
这个时候,就能够顺利启动了,非常nice
好了,希望大家能够掌握本项技能,让你的工程也能够通过这样进行瘦身,优化传输速度。
#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
留言与评论(共有 18 条评论) |
本站网友 公积金贷款利率下调 | 18分钟前 发表 |
换了依赖 | |
本站网友 金钻潮庭 | 13分钟前 发表 |
那该怎么办 | |
本站网友 艾略特波浪理论 | 25分钟前 发表 |
我们再来重新打包一下 | |
本站网友 北京冰点脱毛 | 12分钟前 发表 |
没到对应的包啊image-2025011919477185那么该如何启动这个Jar包呢 | |
本站网友 新生儿窒息复苏 | 23分钟前 发表 |
在上图中 | |
本站网友 kv3000 | 4分钟前 发表 |
结果如下image-20250119192859184如果我们的lib包有改动 | |
本站网友 衢州烟草电子商务网 | 29分钟前 发表 |
本站网友 福永二手房 | 15分钟前 发表 |
前言最近在编写自己项目的时候 | |
本站网友 三相交流电 | 3分钟前 发表 |
要是平常也就算了 | |
本站网友 电商代运营 | 8分钟前 发表 |
那么肯定是我们的构建工具Maven了 | |
本站网友 南宁房产 | 12分钟前 发表 |
发现部署的过程中 | |
本站网友 新浪财经新闻 | 30分钟前 发表 |
就能够顺利启动了 | |
本站网友 健康服务 | 23分钟前 发表 |
前言最近在编写自己项目的时候 | |
本站网友 成都癫痫病治疗医院 | 11分钟前 发表 |
但是 | |
本站网友 获得性免疫缺陷 | 22分钟前 发表 |
我们来重新打包一下 | |
本站网友 千方百计gl | 27分钟前 发表 |
本站网友 百变怪 | 9分钟前 发表 |
发现改的不对 |