ANTLR解释器运行错误。

4
当我按照以下方式运行解释器时, Running method 在ANTLR 3.4(在eclipse 3.7中)中创建解析树时,会显示如下错误信息: Error message “ANTLR Event Listener”期间发生内部错误。对于输入字符串:“false”。
当我运行第二个选项Debug(Java)时,既不会出现任何错误,也不会出现解析树。
我该如何解决这个问题?
谢谢。

我面临着完全相同的问题。即运行时出现“错误”。奇怪的是,单击保存会使解析树正确。如果您解决了此问题,请在此处分享。 - Vinayak Garg
3个回答

3

不使用解释器。

不,这不是玩笑:)。据我所知,antlrv3ide使用来自ANTLRWorks的解释器和调试组件。而ANTLRWorks的解释器相当有缺陷。但是,它的调试器非常好用:所以请使用它。


@DarRay,抱歉,我不知道什么是“a error”。提供的信息太少,无法(尝试)帮助您。请考虑发布语法、测试输入并解释您如何调用解释器。 - Bart Kiers
这个解释器错误甚至在新项目中也会出现。看起来它不会依赖语法。如果没有解析树,有没有其他方法来调试代码并找到错误? - DarRay
请问如何使用调试器,我已经更新了问题。谢谢。 - DarRay
@DarRay,从你的截图来看,“Run”可能是启动解释器,“Debug”可能是调试器。不过我自己从未使用过antlrv3ide。所以再次强调:不要使用解释器! - Bart Kiers
1
ANTLRWorks 的调试器非常棒:我经常使用它(在 ANTLRWorks 中按 CTRL+D)。 - Bart Kiers
显示剩余3条评论

2

我在使用antlr-3.4-complete.jar时遇到了这个问题, 但我将其更改为antlr-3.2.jar,即使它给我FailedPredicateExeption, 我仍然能够在解释器中通过Java运行它并创建语法树。 下载antlr jar:antlr-3.2.jar


-1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接