java反编译修改源码然后再打包

1.打开idea,随便新建一个java项目(maven),如我自己命名为packageclass

2.打开File -> Project Structure,在模块中点+号加入需要修改的jar包源码,如下图,点击java后,会弹出窗口,找到jar包路径后点ok


然后在外部库就可以看到刚刚添加的jar包

3. 假如我们需要修改的就是上图中红框的.class文件,打开该文件,可以看到上方的package org.activiti.engine.impl.cfg;因此在packageclass–>src–>main–>java里面创建一个同路径的package

4. 该代码没有导入其他依赖的package或文件,因此只需要在package–>src–>main–>java–>org.activiti.engine.impl.cfg下新建一个一模一样名称的java文件,并将class的内容(class内容其实就是源码)复制过来。(如果该class文件依赖别的文件,需要也将别的文件复制到packageclass项目下)

5.可以看到复制过来的代码有显示红色的地方,说明有问题。这里是因为代码里有import com.fasterxml.jackson.databind.ObjectMapper;,需要在packageclass项目下的maven xml里面导入该包,而我们的xml配置文件还没导,因此找到源码当中的xml直接替换test项目下的xml。此外代码有问题,还可能是该文件依赖其他文件,如果有依赖,把其他文件也复制过来,注意复制的时候路径保持一样(因为代码首行会package xxx)

6. 此时就修改packageclass下新创建的jave源码(根据自己的实际需要)

7. 修改完成后就可以进行编译了

8. 编译完成后,就会生成一个target文件夹,新生成的.class编译文件就在target下。

9. 使用解压缩工具直接打开原始的jar包,找到需要修改的.class文件,将重新编译的.class文件拖到原来文件的目录,覆盖即可。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值