我可以使用什么程序来反编译类文件?我真的会得到Java代码,还是仅仅是JVM汇编代码?

关于这个网站上的Java性能问题,我经常看到一些人的回答,他们“反编译”了Java类文件,以了解编译器如何优化某些东西。


当前回答

到目前为止列出的JAD链接似乎都是坏的,所以我找到了这个网站。工作得很好(至少对于Linux)!在Ubuntu 11.10上,不知什么原因,我不得不下载静态版本。

http://www.varaneckas.com/jad

其他回答

这里有一些反编译器…快速搜索会得到:

Procyon:开源(Apache 2),积极开发 Krakatau:开源(GPLv3),并积极开发 CFR:开源(MIT)并积极开发 联合应用开发 DJ Java反编译器 摩卡

还有更多。

它们生成Java代码。Java自带一些功能,可以让您看到JVM字节代码(javap)。

Procyon包含一个反编译器。它是自由/开源软件。

Soot是较新的Java代码的一个选项。至少它的优点是最近还在维护……

此外,Java反编译器是一个具有独立GUI和Eclipse集成的反编译器。

最后,还没有提到Jdec,尽管它没有其他选项那么完善。

到目前为止列出的JAD链接似乎都是坏的,所以我找到了这个网站。工作得很好(至少对于Linux)!在Ubuntu 11.10上,不知什么原因,我不得不下载静态版本。

http://www.varaneckas.com/jad

在IntelliJ IDEA平台上,可以使用Java反编译器IntelliJ Plugin。它允许您在调试过程中显示所有Java源代码,即使您没有全部Java源代码。它基于著名的工具JD-GUI。