jad
处于种种原因,很多提供的jar包中的class都是混效过的
处于种种原因,很多提供的jar包中的class都是混效过的,有些时候,可能处于参考,或者其他某些可告人,不可告人的目的,需要查看某些class的运行逻辑或者制作补丁等等什么的,就需要将class进行反编译了,在某些情况下,一些内容可能是动态的,或者想看修改之后出的效果,由于一个jar中往往有很多个class,但通过反编译,修改的可能仅仅只有一到两个文件,这样就需要将修改后的文件重新编译,添加到原始的jar中,来运行了。 我前两天刚好碰到了这个问题,在网上找java的反编译器,看到了一本关于java反编译与修复的书籍(竟然出书了),具体名字没记住,后来简单的思考一下,也不是什么太大的问题,于是制订了下计划,试试看自己的思路是否是正确的: jar使用的是zip的压缩算法,所以,不管是解压缩还是压缩都没有问题。 java有编译器jad,这一步也没有问题