我正在尝试使用antlr来获取给定java文件的AST。我已经在JavaLexer.g4和JavaParser.g4上运行了antlr4来生成所有内容,但我尝试使用grun来查看java文件中的树。我尝试过像这个.\grun JavaLexer tokens HelloWorld.java -gui这样的命令,但是没有得到任何结果。
我很困惑是需要调用JavaLexer,还是JavaParser,或者我在任何方面都完全弄错了命令。如果有必要的话,我会使用PowerShell。
(编辑)正确的powershell命令是:.\grun Java compilationUnit HelloWorld.java -gui谢谢你的帮助!
发布于 2021-10-08 00:00:43
试一试
.\grun Java compilationUnit -gui < HellowWorld.java (not positive re:在PowerShell中从HellowWorld.java到lysin的管道语法)
grun需要grammarName (在本例中为Java),然后是启动规则(如果您想解析*.java源文件,则Java Parser为compilationUnit)
引用词法分析器语法名称并使用tokens作为“开始规则”是一种特殊情况,它只使用-tokens选项来标记化输入流并转储标记。
https://stackoverflow.com/questions/69488835
复制相似问题