Java开发职员一定会碰着这样的问题:当你需要调试一段代码,却没有源代码,你该怎么办? 或者当你想学习别人的法式代码,若何去剖析它?Java反编译工具就派上用场了。
反编译,即将已编译的可执行文件(.class文件),通过特殊的工具反转成等价的Java源代码的历程。下面,我们将先容几个适用于Java反编译的工具,并划分先容各自的优点。
工具一:jd-gui
jd-gui 是一款免费的 Java 反编译工具,可以直接将 .class 反编译成 Java 代码,而且以图形化的方式展示出来。jd-gui 运行简朴,不需要特其余设置,可以在 Windows、Mac 和 Linux 等多平台上平稳运行,同时支持字节码名堂的 .class 文件。
工具二:Procyon
Procyon 是一款免费的反编译工具。反编译结果相对于其它反编译工具对照清晰。该工具不仅能把 Java .class 文件转化成 Java 源代码文件,还能将 Java 7 的新语法重新编写为响应版本的 Java 5 或 Java 6 语法。可以作为很好的学习工具。
工具三:JAD
JAD 是一款免费的小巧的反编译工具,有很好的 GUI, 历程直观,使用就像审查 word 文件一样,操作简朴。瑕玷是不能完全反编译出原代码,有一定的错误率,但对于大部门应用场所已经足够。
工具四:CFR
CFR 是一款免费的反编译工具。反编译后的 Java 代码与原代码极其相似,瑕玷是不能反编译 lamda 表达式,此外,对于对照新的 Java 版本支持不太友好,还需进一步完善。
只管反编译让有些人敏感,但它是一个需要的手艺。希望上面提到的工具可以辅助你解决反编译的问题。