在实际的开发中我们可能因为某些原因需要修改依赖包中的某个class文件源码,比如class中将某个异常吃掉了在发生异常时未打印异常的message,又或者你就是想修改源码实现等等,class文件时不能直接通过我们的编辑器进行修改,通常的实现方式是通过一些特殊的工具修改,今天记录一下如何使用我们的eclipse达到修改架包中的class文件的一种方式:.class格式的文案我们的java文件通过编译后生成的,基于这个过程,我们逆向思维,只要我们能够拿到.class文件的内容,然后再新建一个编译前的java文件,再将其编译便可以得到.class文件,不一样也可以实现吗?接下来看看怎么做的
环境准备:
1、首先要有一个反编译工具:我这使用的是jd-gui.exe,这个大家在网上都能找到。
2、编译工具,比如eclipse、idea...
3、安装好JDK,配置好环境变量
描述:现在有这样一个架包:infosecCrypto-1.1.0.jar,我们需要修改其中的一个class文件:JDKKeyStore.class下图是发编译后的截图

具体步骤:
1、现在在我们的eclipse中新建一个工程(或者就在已有的工程中);
2、新建一个包路径与JDKKeyStore.class包路径一致;

3、在该路径下新建将JDKKeyStore.java文件,然后将JDKKeyStore.class中的内容复制粘贴至JDKKeyStore.java中
4、解决其中的一些错误冲突,修改需要调整的代码逻辑。
5、编译保存,找到生成对应的class文件,使用它替换原来的class文件。
6、替换架包验证。
通过以上步骤便可以生成新的目标class文件。