java - 如何使用 javac 工具解析器从 java 文件中读取内联注释?

标签 java parsing javac

我正在使用 tools.jar(即 JavaCompiler)中的 javac 来解析 java 文件。我使用 TreePathScanner 的实现来解析源代码。到目前为止,一切似乎都很好,因为我可以解析导入、包名、类名、方法名、说明...

但是我确实对内联评论有问题——我不能简单地让它们出现在创建的 AST 树中,或者访问它们。但是,我能够阅读类、方法等的 javadoc 注释,但不能阅读内联注释。

如何以最好的方式阅读行内评论?我正在查看 netbeans 源代码(因为它也使用 javac 进行解析),但我无法轻易找到任何相关信息。

我孤注一掷的解决方案是使用源文件的语句位置,然后手动解析两条语句之间的所有内容以获取注释。或类似的东西,但在两个树节点之间。

有人知道更好的解决方案吗?谢谢!

最佳答案

你不能。编译器将它们丢弃。编译器总是这样做。 Java 编译器不会丢弃 Javadoc 注释,只是因为 Javadoc 使用编译器来查找它们,并且 Javadoc 人员与编译器人员聚在一起。

关于java - 如何使用 javac 工具解析器从 java 文件中读取内联注释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14656275/

相关文章:

java - 如何将此 HQL 转换为 SQL

java - 确保 http post 来 self 的小程序而不是其他人?

java - 为不同场景配置模拟对象的状态

java - 在Java中解析一个固定宽度的格式化文件

java - 从依赖于 jar 文件的命令行运行 Java 程序?

java - 设置手动编译的类文件的位置

java - 在另一个类中包含充满可重用函数的类

java - 如何在Java中对整数进行排序并保存在一些TextView中

regex - 使用正则表达式进行日志解析

php - 使用 php 在字符串中降级标题标签(递归地将 h1 转换为 h2,将 h2 转换为 h3)