Java源代码解析器

我需要以编程方式从Java源文件中提取方法定义/实现,你能推荐一些我可以使用的方便的库吗? 谢谢。

另一种选择是Jflex和CUP 。 根据我的使用经验,我比ANTLR更喜欢语法。 但是,在IDE支持和文档方面,ANTLR得分更高。

ANTLR是一个解析器/生成器,具有Java(和其他语言)的语法。 它可以生成一个抽象语法树(AST),您可以根据需要进行导航和操作。

如果你寻找一个简单的解析器,我会使用JavaParser(Eclipse中也包含一个更重的实现)

在坚持使用库之前,您是否考虑过Doclet是否适合您的目的? 虽然用于自定义Javadoc解析,但Doclet实际上可以访问有关类本身的许多细节,这些细节可以用于任何目的。

另一个类似的不完全预期的可能性是相当糟糕的文档注释处理器function,尽管它的名称,它可以用于普通代码生成和一般乱码,无论你通过类加载器加载什么。