先解压,更新文件,再压缩:
一个spring boot生成的jar包,使用unzip命令解压:(指定目录:spring-boot)
unzip spring-boot.jar -d spring-boot
得到的目录结构如下:
. ├── BOOT-INF│ ├── classes│ └── lib ├── META-INF│ ├── MANIFEST.MF│ └── maven └── org └── springframework
其中META-INF目录下的MANIFEST.MF文件是记录入口main函数的清单文件,只要Main函数所在类名称不变,这个不用改。
org目录是spring boot启动程序要用到的luncher,不用动。只要我们依赖的lib包都没有变化,将新的class文件同步到BOOT-INF目录的classees目录后,执行jar命令打一个新包即可:
进入刚解压的 spring-boot目录,可以使用SFTP上传文件更新好class文件
cd spring-boot
更新好文件后重新压缩:
jar -fm0uv ../spring-boot.jar META-INF/MANIFEST.MF BOOT-INF org 注意这里使用 ../spring-boot.jar 更新覆盖上一级刚解压的jar文件
其中fm0这3个命令参数是必须的,u代表更新,换成c表示新建其实也可以。v表示输出过程。f和m的顺序要讲究,保持同spring-boot.jar和META-INF/MANIFEST.MF的相对顺序一致。
若本文章侵犯了您的著作权,请联系我删除 QQ:695898855