如何修改jar的class文件
RAE5,246人阅读
在项目中遇到需求想要从已经打包好的jar修改其中的类来扩展功能怎么办?大概分为以下步骤:
- 反编译jar从class文件拿到Java源码
- 修改源码后生成class文件
- 替换class文件
- 重新打包
1、反编译
执行以下命令解压jar文件
jar -xvf X.jar
反编译jar得到源码
使用工具 jadx-gui
,下载地址:https://github.com/skylot/jadx
找到要修改的类复制Java源码。
注意:如果不想下载工具可以自己在AndroidStudio里面直接复制源码
2、编译项目
在AndroidStudio 新建项目,修改源码后进行编译。执行assemble
编译任务后在/build/intermediates/javac/release/classes
找到生成好的class文件
3、替换class文件重新打包
把class 文件替换回去后,执行以下命名进行打包
cd 到刚才解压的目录里面
jar -cvf YOUR.jar ./
至此已完成新的jar文件。
评论 | 0 条评论