一、背景
打好jar包后,已经在用户方的电脑上部署了,但是需要修改yml中的配置。如果再让开发方打包就太麻烦了,而且很可能条件不具备,可以通过修改现有jar中的yml文件来达到目的。
二、方案
1、直接修改
有的压缩软件支持直接修改,修改完再保存就可以了。
局域性:必须安装了相关软件,而且麒麟系统上很可能没有这样的软件。
2、jar命令
(1)解压jar文件
mkdir temp && unzip XXXX.jar -d temp/
(2)修改文件
用vim修改,或者用词本修改都行。
(3)重新打包
jar -cvfM0 XXXX.jar -C temp/ .
注意:“-cvfM”后面是数字0,不是字母O。
(4)删除临时文件
rm -rf temp
三、说明
机器人提供了另外两种方案,测试了没成功
(1)vim直接打开jar文件
失败原因:只读
(2)jar精准修改文件
用“jar tf”搜索文件,用“jar xf”提取文件(没成功),再用“jar uf”更新jar文件。