需求
项目中使用到了第三方jar包,对方已不再维护,需要自行修改其中的某个功能的实现。
实现步骤
- 确定要修改的jar包中代码的位置。IDEA支持调试jar包中的代码,通过一步步的断点调试来确定我们要修改的类的名称,以及其中的属性或函数。如:包名cn.test,类名A,函数名a。
- 新建一个Java工程,将第三方jar包引入到工程中。新建包cn.test,新建类A,将jar包中A类的代码(在IDEA中可以看到)复制到新建的A类中。
- 修改A类中指定的代码。如果出现找不到依赖的情况,重复第二步,copy依赖的类。
- 选中A类,在IDEA的菜单中选择Build,
Recompile 'A.java'
。 - 替换jar包中的A类。使用压缩包工具打开jar包,将新的A.class替换其中的A.class。
- 至此,修改第三方jar包中的class完成。