jar命令的安装与使用

场景:

项目中经常遇到使用WinR软件替换jar包中的文件,有时候存在WinRAR解压替换时提示没有权限,此时winRAR不能用还有有什么方法替换jar包中的文件。

方法:

使用jar命令进行修改替换

问题:

执行jar命令报错'jar' 不是内部或外部命令,也不是可运行的程序

环境配置

CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

JAVA_HOME=C:\Program Files\Java\jdk1.8.0_151

PATH中添加 .;%JAVA_HOME%\bin;

验证:

验证一:cmd 在命令行执行jar命令

验证二:cmd 在命令行执行java命令

jar命令

解压jar包

复制代码
方式一:jar -xf gisquest-crypto-core-1.0.1.jar
​
含义:-xf 表示从jar包中提取所有文件(即解压)
​
方式二:jar -xvf gisquest-crypto-core-1.0.1.jar
​
含义:-xvf 表示从jar包中提取所有文件并显示解压过程(即解压)

替换jar包中的文件

jar包中config.properties修改前如下:

先config.properties 改成default.cryptoType=sm放到jar包中

复制代码
jar -uvf0 gisquest-crypto-core-1.0.1.jar config.properties
​
含义:更新并存储config.properties文件
​
其中:u表示更新 
​
f 表示:指定的文件
​
0表示:存储

替换指定文件夹下class文件

将AllModulesAspect.class文件放入jar包com\gisquest\cloud\crypto\conf\文件夹下

执行: jar -uvf0 gisquest-crypto-core-1.0.1.jar com\gisquest\cloud\crypto\conf\

注意:

复制代码
需要现将AllModulesAspect.class文件放入到gisquest-crypto-core-1.0.1.jar加压后的com\gisquest\cloud\crypto\conf\下然后在执行:

OK成功

相关推荐
天河归来10 小时前
第三方接口不稳定,如何让核心任务继续完成
java·大数据
Knight_AL10 小时前
Java 文件下载时文件名中的 `#` 被转换成 `%23`?一次 URL 编码与解码问题排查
java·开发语言
砚底藏山河11 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
猿究院_夏燊12 小时前
MySQL 的四种隔离级别
java·数据库·mysql
码流子12 小时前
移动收费怎么做?手持终端+App+收费中心的架构实践
java·开发语言·架构
霸道流氓气质13 小时前
AI 流式对话与实时聊天平台:SSE 解码竞态、有状态会话隔离与背压取消的 Vue3 + Spring AI 生产级实战
java·人工智能·spring
云创智城-yuncitys13 小时前
YunParking 4.0:JDK 17 与 Spring Boot 3.2 的停车云升级
java·开发语言·spring boot
文丑颜不良啊13 小时前
LeetCode1661~1680题目解析
java·leetcode
子非鱼@Itfuture13 小时前
关于前后端联调中登录状态/登录信息失效?
java·前端
郭小李13 小时前
openFeign入门
java·开发语言·前端