1.创建解压文件夹
mkdir tmp
2.解压目标jar包
unzip target.jar -d tmp(解压到目标路径)
3.删除原来包,替换子jar包
rm -rf sub.jar
cp sub_new.jar /tmp/BOOT-INF/LIB
4.压缩,将BOOT-INF下所有文件打到new.jar里面,但是不进行压缩(-0)
zip -r -0 new.jar BOOT-INF/lib
5.对除了BOOT-INF/lib的文件之外的文件进行压缩并添加到new.jar中
find . -path './BOOT-INF/lib/*' -prune -o -print | zip -@ new.jar
6.验证新的jar包
jar -tf new.jar
二、解压,压缩无子包jar包命令
1.解压
mkdir tmp
cp target.jar /tmp
cd tmp
unzip tmp.jar -d tmp(解压路径)
2.压缩
cd tmp
zip -r target_new.jar META-INF org
zip -r target_new.jar(打包jar包名) META-INF org(要打包的文件名,依次排列,空格隔开)