java - ANTLR 警告 : TestRig moved to org. antlr.v4.gui.TestRig

标签 java shell batch-file cygwin antlr

我一直在努力让 ANTLR 工作一整天。我使用过几个网站,包括 antlr.org、大量的 StackOverflow 查询和 Terence Parr 的教科书。我在 Windows 7 机器上(工作机器,无法更改为 Linux)但我在 CommandPrompt 和 Cygwin 上都试过了,结果相同。

无论我做什么,当使用grun文件时,最后总是出现同样的错误:

Warning: TestRig moved to org.antlr.v4.gui.TestRig; calling automatically Can't load Hello as lexer or parser

我的计算机上有最新版本的 JRE 和 JDK,以及最新版本的 cygwin。

我可以从任何地方运行 grun 和 antlr4 的批处理文件,所以我强烈猜测我的路径设置正确。我可以毫无问题地运行 antlr4.bat。它创建教科书上说我应该看到的每个文件:

Hello.g4 HelloBaseListener.java HelloLexer.tokens HelloParser.java Hello.tokens HelloLexer.java HelloListener.java

我可以在这些文件上运行 javac,它会生成各种 CLASS 文件:

HelloBaseListener.class HelloLexer.class HelloListener.class HelloParser$RContext.class HelloParser.class

但是,当我尝试在其上运行 grun 时,我得到了这个:

Warning: TestRig moved to org.antlr.v4.gui.TestRig; calling automatically Can't load Hello as lexer or parser

我已经尝试了几种命令组合来使用 grun 文件,但它在书中说要使用的是:

grun.bat Hello r -tree

我也用 grun 多次更改了 .bat 文件,只是为了试验,使用书中和网站上的不同组合,但我总是回到这个:

java org.antlr.v4.runtime.misc.TestRig %*

那是我老板告诉我使用的,对他很管用。

最佳答案

在你的 grun.bat 命令中使用它

java org.antlr.v4.gui.TestRig %*

关于java - ANTLR 警告 : TestRig moved to org. antlr.v4.gui.TestRig,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32487859/

相关文章:

java - 如何在我的自定义日期和时间中设置通知

linux - Bash Shell 脚本 - 剪切

python - 为什么只有在管道传输 python 脚本的输出时才会出现 unicode 错误?

batch-file - 为什么批解释评论?

php - 通过 exec() 在 windows 8.1 中以管理员权限执行批处理脚本

java - 如何从 JNA 中的内存/指针对象读取结构?

java - 事务注释在 Spring Boot 2.1.3 中不起作用

java - 在注释处理器中使用 ServiceLoader

linux - O/P重定向到/dev/null时到哪里去了

windows - 如何更换!优雅地分批处理到 %21?