2016-10-05 196 views
6

我想弄清楚如何使用Fernflower Java反编译器。Fernflower和IntelliJ IDEA的java反编译器

我可以在以下位置找到java-decompiler.jar

~/idea-IC-162.1628.40/plugins/java-decompiler/lib/java-decompiler.jar 

没有fernflower.jar,但是。我认为这是因为功能被折叠为java-compiler.jar,并且Fernflower自述文件在2年内根本没有更新。

当我跑不过下面:

java -jar ~/idea-IC-162.1628.40/plugins/java-decompiler/lib/java-decompiler.jar myclassfile.class . 

我得到

无主清单属性,在/home//idea-IC-162.1628.40/plugins/java-decompiler /lib/java-decompiler.jar

IntelliJ停止支持基于命令行的反编译,或者我在这里丢失了什么?

回答

9

尝试调用主类org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler手动

java -cp java-decompiler.jar org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler myclassfile.class . 

您也可以找到更多关于内部IDEA源代码 https://github.com/JetBrains/intellij-community/search?utf8=%E2%9C%93&q=Fernflower

+0

大Fernflower的内部使用的查询,这个工程。 TIL关于[可执行和非可执行JAR]之间的区别(http://stackoverflow.com/a/9689868/864684)。 –