【发布时间】:2013-01-14 22:45:39
【问题描述】:
我正在尝试用 Java 编写一个简单的代码分析器/元数据提取器。一开始,我要做的就是提取和区分实例和局部变量、方法及其签名,并将局部变量与它们所属的方法相关联,这与 Eclipse 在其大纲视图中显示它们的方式大致相同。当然,这可以通过简单的文本解析来完成,但这显然是一种极其繁琐和乏味的方法,肯定是在重新发明轮子。由于编译器已经解析了源代码,我想利用它的功能以一种干净、简单、优雅的方式提取元数据。
知道使用哪个 API 来完成此任务吗?任何人都可以在 Eclipse 中指出我可以用来执行此操作的 API(我确信它存在)吗?
谢谢
【问题讨论】:
-
您可能需要考虑使用JavaCompiler 以编程方式编译源代码,这样您就可以访问虚拟机将拥有的所有数据。请参阅this answer 获取指针,这是很棒的东西。
标签: java compiler-construction metadata javac