2010-05-14 56 views
1

我有一個樹解析器,它對我的​​ 解析器生成的AST進行語義分析。它已宣佈的規則如下:在ANTLR語法規則上聲明的異常被忽略

transitionDefinition throws WorkflowStateNotFoundException: /* ... */ 

這編譯就好了,並在ANTLR Wiki 的規則語法匹配,但我的例外是從來沒有 宣佈所以Java編譯器抱怨未申報異常。

./tool/src/main/antlr3/org/antlr/grammar/v3/ANTLRv3.g表明,它的建設 樹(但我不是,如果是在V2或V3語法是ANTLR 3.2使用實際上正):

throwsSpec 
    : 'throws' id (',' id)* -> ^('throws' id+) 
    ; 

我知道我可以使它運行時例外,但我想用我的異常 層次結構。我做錯了什麼或者該語法是否工作?

回答