目的:添加缺少依赖的jar进可执行jar包
环境:
系统:Win10
环境:jdk 1.8_202
一、问题分析
之前有个可执行jar文件特别大,由于依赖的jar包文件巨大,所以在更新的时候不想重复拷贝依赖文件。在拷贝以后需要将依赖的jar包都放回到可执行jar包的BOOT-INF/lib文件夹下。
一、解决问题
错误的方式:使用压缩软件打开jar包,将需要的jar文件copy进去。这样jar执行会报错,原因是压缩文件在添加.jar文件进包的时候,会自动将其压缩以后再放入,导致可执行jar包执行不力。*
正确方式:使用jar命令打包文件(以server.jar为例,依赖jar包为libaaaa.jar)
1. 新建一个文件夹,将可执行server.jar拷贝进去。
2. 在新建的文件夹下建立层级目录BOOT-INF/lib文件夹,并将libaaaa.jar拷贝进去。
3. 打开控制台,cd到新建的文件夹,也就是serve.jar的这层目录。执行命令即可:
jar -ufM0 server.jar BOOT-INF/lib/*.jar