修改jar包中的配置文件

修改jar包配置的方法(转载)https://www.cnblogs.com/malcolmfeng/p/9870836.html

方式一 通过jar命令替换jar包中的文件(也可新增)

1.列出jar包中的文件清单
jar tf genesys_data_etl-0.0.1-SNAPSHOT.jar

2.提取出内部jar包的指定文件
jar xf genesys_data_etl-0.0.1-SNAPSHOT.jar BOOT-INF/classes/realtime/t_ivr_data_bj.json

3.然后可以修改文件
vim BOOT-INF/classes/realtime/t_ivr_data_bj.json

4.更新配置文件到内部jar包.(存在覆盖,不存在就新增)
jar uf genesys_data_etl-0.0.1-SNAPSHOT.jar BOOT-INF/classes/realtime/t_ivr_data_bj.json

4.1更新内部jar包到jar文件
jar uf genesys_data_etl-0.0.1-SNAPSHOT.jar 内部jar包.jar

5.可以查看验证是否已经更改
vim genesys_data_etl-0.0.1-SNAPSHOT.jar

方式二 解压jar包,修改后重新打包jar

1.解压
unzip genesys_data_etl-0.0.1-SNAPSHOT.jar
2.移除jar包,最好备份
rm genesys_data_etl-0.0.1-SNAPSHOT.jar
3.重新打包
jar -cfM0 new-genesys_data_etl-0.0.1-SNAPSHOT.jar *
或者
jar -cvfm0 genesys_data_etl-0.0.1-SNAPSHOT.jar ./META-INF/MANIFEST.MF ./
4.运行
java -jar new-genesys_data_etl-0.0.1-SNAPSHOT.jar

jar命令参数:
-c 创建新的存档
-f 指定存档文件名
-M 不配置配置清单,这样还可以使用maven生成的配置清单也就是MANIFEST.MF
-0 不进行压缩,如果压缩会有问题
-m 指定清单文件
-t 列出归档目录
-x 从档案中提取指定的 (或所有) 文件
-u 更新现有的归档文件
-v 在标准输出中生成详细输出

另外
如果是替换 struts之类的文件,在struts主文件中继承并覆写也是可以的。


版权声明:本文为weixin_42621911原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。