springboot 项目分离打包部署
jeecgboot原始项目正常打包后,整个jar包有接近200mb,可以通过分离打包部署,将依赖单独拎出来存放,这样在后续开发中,在没有更新依赖的情况下,极大地降低了项目打包和传输的时间。
一、打包项目
通过 maven -> package 打包项目,这里只是为了拿到依赖包。
二、解压jar包
将上一步的jar包解压:
解压后目录:
解压后 classes 文件夹下的目录:
这里面的yml文件下一步需要用到。
三、创建文件夹
创建一个文件用于存放依赖和配置(这里在E盘的jeecgboot下创建了一个lib文件夹),然后将上一步的解压的jar包中lib文件复制到该文件夹里面,再创建一个config文件夹,将上一步解压后的classes文件夹下的yml文件复制到config文件夹中,最终目录如下:
四、修改pom文件
修改jeecg-system-start目录下pom文件的代码:
原:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
新:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<layout>ZIP</layout>
<includes>
<include>
<groupId>nothing</groupId>
<artifactId>nothing</artifactId>
</include>
</includes>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
该插件在打包的时候,会自动屏蔽掉第三方依赖,这样就能减少jar的内存。
五、再次打包:
通过maven -> install 打包项目:
也可以使用 maven -> package 打包,install和package区别这里不过多解释,install包含了package的所有操作。
最终打包后的jar包只有200多kb大小。
六、运行jar包
指令 java -Dloader.path=***\lib -jar ***.jar
前面的 * 表示lib地址,后面的 * 表示jar包的地址
可以看到已经运行成功了:
七、访问项目
这里前端是已经是跑起来的:
浏览器访问上面四个地址之一,即可进入jeecgboot系统:
分离部署极大地降低了每次打包、传输的文件大小,避免重复操作,还是很有用的;哪怕是项目更新依赖或者添加依赖,也只需要在lib文件夹中把修改部分依赖进行更新即可。
转载自:https://juejin.cn/post/7351614051364519999