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项目下

在这里插入图片描述

  1. 可以看到复制过来的代码有显示红色的地方,说明有问题。这里是因为代码里有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文件拖到原来文件的目录,覆盖即可。
在这里插入图片描述

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐