我想为简单的 Java 逻辑创建一个自动的类似流程图的可视化,为此我需要解析 Java 源代码,我有 2 个候选者,ANTLR http://www.antlr.org/ and javax.lang.model http://download.oracle.com/javase/6/docs/api/index.html?javax/lang/model/util/package-summary.htmlJava 6 的版本。两者都不容易。
我还没有找到一个与我想要实现的目标相距甚远的工作示例。
我想找到简单的变量声明、赋值和流程(if、for、switch、布尔条件等)
是否有一个简单的示例或教程?
我发现很少有 ANTLR 示例(没有一个是在没有大量“作业”的情况下开箱即用的),并且绝对没有针对 javax.lang.model 的示例
您想自己生成解析器有什么特殊原因吗? IMO,让现有的解析器为您创建一个 AST 会更容易,您“简单地”遍历它以收集有关源文件的数据。使用您最喜欢的搜索引擎和关键字“get ast java source”将导致许多相关的点击。
乍一看,这些看起来都是合适的候选人:
- Eclipse JDT API http://www.ibm.com/developerworks/opensource/library/os-ast/
- java解析器 http://code.google.com/p/javaparser/
当然你可以使用ANTLR,有很多ANTLR语法 http://www.antlr.org/grammar/list对于 Java 可用,但有is选择此工具(或其他一些解析器生成器)时的学习曲线相当不错。如果您选择 ANTLR,我非常乐意回答有关它的任何问题。
祝你好运!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)