ANTLRWorks在java文件中生成解析器声明抛出,但不生成任何其他内容

ANTLRWorks在java文件中生成解析器声明抛出,但不生成任何其他内容,java,antlr,antlrworks,Java,Antlr,Antlrworks,我刚开始研究ANTLR,注意到antlrworks1.5生成了Java解析器文件,但声明不完整 语法文件: grammar ASTDemo; options { output=AST; } parse : orexpr+ | andexpr+ | TAG ' ' parens | TAG (parens andexpr)+ | together+ ; parens : '(' TAG ')'; and

我刚开始研究
ANTLR
,注意到
antlrworks1.5
生成了Java解析器文件,但声明不完整

语法文件:

grammar ASTDemo;

options { 
  output=AST; 
}

parse
    :   orexpr+
    |   andexpr+
    |   TAG ' ' parens
    |   TAG (parens andexpr)+
    |   together+
    ;

parens
    :   '(' TAG ')';

andexpr
    :   TAG (AND^ TAG)+;    

orexpr
    :   '[' TAG (OR^ TAG)+ ']';

together
    :   TAG (' '^ TAG)*
    ;

TAG     : ('FOO' | 'BAR');
OR  :   '|';
AND :   ': ';
WS  :   (' ')+;
下面是包含不完整抛出语句的示例行

public final ASTDemoParser.parse_return parse() throws  {
当前用于启动ANTLRWorks的JDK版本为1.6x 以前有人见过这个吗


不幸的是,由于这个编译错误,
ANTLRWorks
不允许我在其中调试语法。每次要测试时,我都必须手动修复文件。

我刚刚使用
AntlWorks 1.5 rc1
JDK 1.7.0.11
编译了您的语法

所有代码都编译得很好,上面提到的代码行如下所示:

public final ASTDemoParser.parse_return parse()抛出识别异常{


这可能是任意错误的表现。再次尝试重新编译它,可能是您尝试使用
JDK 1.7

让AntlWorks使用JDK 1.7x启动确实解决了问题。谢谢!现在尝试并找出调试无法工作的原因。总是有一些问题。:)再次感谢!!我从AntlWorks 1.5和JDK 1.7u2得到了这一点1也是。AntlrWorks1.4.3工作正常。