正在从ANTLR4访问者引发异常

正在从ANTLR4访问者引发异常,antlr,antlr4,Antlr,Antlr4,我是ANTLR的新手。这是一个语法,我正试图为它编写一个Visitor类 grammar extremelysimpleexpr ; stat : expr ; expr : sub ; sub : add ( '-' add )* ; add : VAL ( '+' VAL )* | VAL ; VAL : [0-9]+ ; [ \t\n\r]+ -> skip ; Vistor.java ......... public Integer vistAd

我是ANTLR的新手。这是一个语法,我正试图为它编写一个Visitor类

grammar extremelysimpleexpr ;

stat : expr ;
expr : sub ;
sub : add ( '-' add )* ;
add : VAL ( '+' VAL )* 
    | VAL
    ;  


VAL : [0-9]+ ;
[ \t\n\r]+ -> skip ;
Vistor.java

 .........
  public Integer vistAdd(ctx) {
       if (some cond) {
          throw new Exception()
       }
  }
 ..........

问题是我不能抛出异常,因为生成的代码不处理异常,方法签名中没有
抛出异常
。有什么办法可以解决这个问题吗?

一个未经检查的异常将起作用,正如Sam Harwell所建议的那样——作为两个选项之一。我刚试过

您可以在任何需要的地方捕获该异常