0%

linux 手动解压/增加/更新 jar包中文件

linux 手动解压/增加/更新 jar包中文件

项目现场使用堡垒机等安全措施时,自己没有上传文件的权限,如果此时需要修改配置文件,或增删jar包内文件,只能通过Shell命令行进行操作。

重新打包
1
2
3
4
5
6
#包名:pssystem-0.0.1-SNAPSHOT.jar
cd project
jar -xvf pssystem-0.0.1-SNAPSHOT.jar #解压jar包内的文件到当前目录
rm pssystem-0.0.1-SNAPSHOT.jar
vim application.yml
tar -cvf pssystem-0.0.1-SNAPSHOT.jar #打包当前目录中的文件
查看 jar 包中的文件列表,进行重定向,输出到txt文件
1
jar -tvf pssystem-0.0.1-SNAPSHOT.jar > list.txt
更新文件到 jar 中,目录需对应
1
2
vim application.yml
jar -uf pssystem-0.0.1-SNAPSHOT.jar BOOT-INF/classes/application.yml #文件需在当前目录
增加文件到 jar 中,目录需对应

与修改一致,jar 中原来没有的目录,会自动创建。

1
2
vim a.class
jar -uf pssystem-0.0.1-SNAPSHOT.jar BOOT-INF/classes/com/a.class #文件需在当前目录
jar命令
1
2
3
4
5
6
7
8
9
10
11
12
13
14
jar命令各个参数的详细介绍
-c 建立新的归档
-t 列出归档的目录
-x 从归档中撷取已命名的 (或所有) 档案
-u 更新现有归档
-v 在标准输出中产生详细输出
-f 指定归档档案名称
-m 包含指定清单档案中的清单资讯
-e 为独立应用程式指定应用程式进入点
已随附於可执行 jar 档案中
-0 仅储存;不使用 ZIP 压缩方式
-M 不为项目建立清单档案
-i 为指定的 jar 档案产生索引资讯
-C 变更至指定目录并包含後面所列的档案