我有一个树解析器正在对我生成的AST进行语义分析 解析器。它的规则声明如下:
transitionDefinition throws WorkflowStateNotFoundException: /* ... */
编译得很好,并且与ANTLR Wiki处的规则语法相匹配 但我的例外是永远不会 声明所以Java编译器抱怨未声明的异常。
./tool/src/main/antlr3/org/antlr/grammar/v3/ANTLRv3.g表明它正在建设中 一棵树(但如果它是ANTLR的v2或v3语法,我实际上并不是肯定的 3.2正在使用):
throwsSpec
: 'throws' id ( ',' id )* -> ^('throws' id+)
;
我知道我可以将它作为运行时异常,但我想使用我的异常 层次结构。我做错了什么或该语法应该有效吗?