你能推荐一些库提供Java字节码作为Eclipse的Java AST(即节点从org.eclipse.jdt.core.dom.ASTNode
下降)吗?
答案 0 :(得分:2)
您正在寻找一个反编译器,以及将该工具的AST表示转换为Eclipse的AST表示的方法。
Java Decompiler有一个Eclipse插件来重新创建源代码。您可以使用Eclipse的ASTParser
来解析它以获得您想要的AST(或者您可能只是想要开始源代码)。
你遇到的最大障碍是反编译器无法准确地重新创建原始源代码语法(由于obfuscation或者因为它根本无法理解字节码构造)。它生成了什么源代码?那么Eclipse ASTParser如何处理呢? YMMV。
有许多decompilers for Java,它们具有不同的能力,具体取决于编译器/混淆器,它创建了它试图反编译的字节码。如果Java Decompiler不适合您,您可以为其他人创建一个eclipse插件。