修改jar包中的内容

思路:使用jd-gui对jar中需要修改的地方进行定位,然后使用javassist对jar中的内容进行修改生成对应类的新的class文件,然后打开jar(打开方式使用压缩工具),找到对应的位置,删除老的文件,将修改后新生成的文件拖入。

1.工具地址:

  jd-gui:https://www.onlinedown.net/soft/70298.htm (第三方地址,通过这个下载需要注意,点错的话可能会被捆绑安装)

  javassist:该工具我通过maven导入。

1 <!-- https://mvnrepository.com/artifact/org.javassist/javassist -->
2         <dependency>
3             <groupId>org.javassist</groupId>
4             <artifactId>javassist</artifactId>
5             <version>3.27.0-GA</version>
6         </dependency>

2.jd-gui定位:

通过jd-gui工具直接选取你需要改动的jar包,打开即可看到如下内容:

 在其中找到你要修改的类,查看类里面的内容。

 3.创建新项目通过javassist获取方法并将自己新编写的方法替换。

 忽略掉项目名称和其他乱七八糟的东西(图省事随便开了个项目),main方法里写的便是获取类、获取类方法、重新塞入新定义的方法,指定新的class文件输出位置。

4.使用压缩工具打开jar包,找到需要替换的文件,替换掉。

 直接替换掉即可,随后重新在项目中导入jar文件,即可使用替换后的jar。

 

posted @ 2023-06-20 15:54  莴苣&  阅读(1159)  评论(0编辑  收藏  举报