修改jar包中的配置文件

修改jar包中的配置文件,第1张

原文地址: 修改jar包中的配置文件

现有jar包 base-web.jar

查找jar包里面的文件:

jar ftv ks-web-1.0.3.jar | grep pom.xml

要修改jar包中配置文件可以用下面三种方式:

方式一 通过vim命令直接修改保存jar。超方便。

通过vim命令直接编辑jar

vim xxx.jar 该命令首先会列出全部文件,可以通过输入/abc来搜索,定位到对应的abc文件后回车进入配置文件内进行编辑,:wq保存。

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

1.列出jar包中的文件清单

jar  tf  base-web.jar

2.提取出内部jar包的指定文件

jar  xf  base-web.jar  `jar  ft  base-web.jar | grep  t_ivr_data_bj.json`

3.然后可以修改文件

vim BOOT-INF/classes/realtime/t_ivr_data_bj.json

4.更新配置文件到内部jar包.(存在覆盖,不存在就新增)

jar uf  base-web.jar  BOOT-INF/classes/realtime/t_ivr_data_bj.json      

4.1更新内部jar包到jar文件

jar  uf  base-web.jar  内部jar包.jar     

5.可以查看验证是否已经更改

vim base-web.jar

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

1.解压

unzip base-web.jar

2.移除jar包,最好备份

rm base-web.jar

3.重新打包

jar -cfM0 base-web.jar *

或者

jar -cvfm0 base-web.jar ./META-INF/MANIFEST.MF ./

4.运行

java -jar base-web.jar

jar命令参数:

-c 创建新的存档

-f 指定存档文件名

-M 不配置配置清单,这样还可以使用maven生成的配置清单也就是MANIFEST.MF

-0 不进行压缩,如果压缩会有问题

-m 指定清单文件

-t 列出归档目录

-x 从档案中提取指定的 (或所有) 文件 

-u 更新现有的归档文件 

-v 在标准输出中生成详细输出 

自定义jar目前只能读取application.properties和application.yml吧。

可以用一个简单点的方法进行监听注入,在工具包内写一个init方法,在springboot启动时初始化就可以了。比如springboot启动完成后读取配置文件,然后注入到工具包内。

这种做法很不好呀,应该在窗体程序中增加一个配置文件,原包中的xml文件做为原始配置不动,窗体程序运行时可做一个菜单项“配置”,新做的配置修改保存到本地一个xml文件中,以后启动窗体程序时先检查有没有这个本地xml文件,有则从它里面读入配置,否则从类路径的jar中读取配置


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7925315.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存