2012-03-15 3 views
1

나는시도-catch 블록은

void Stm() : 
{} 
{ 
    try { 
    (
     IfStm() 
    | 
     WhileStm() 
    ) 
    }catch (ParseException e) { 
    error_skipto(SEMICOLON); 
    } 
} 


void error_skipto(int kind) { 
    ParseException e = generateParseException(); // generate the exception object. 
    System.out.println(e.toString()); // print the error message 
    Token t; 
    do { 
    t = getNextToken(); 
    } while (t.kind != kind); 
} 

내가 명령 jjtree을 실행하면 내가 .jjt 문법 파일에 다음 코드를 언급 한

JavaCC에 문법에 오류보고 및 복구를 구현하기 위해 노력하고 CMinus.jjt 다음 오류가 발생합니다.

파일 CMinus_ragu.jjt에서 읽기. . . 오류 파싱 입력 : org.javacc.jjtree.ParseException 접촉 된 "은"{ ""{ "의"t 라인 (111), 칼럼 (30) 중 하나 기대되었다 를 "발생"... ":".. "#"...

오류 코드 란 무엇이며 오류 복구를 어떻게 처리해야합니까?

답변

1

키워드 JAVACODE가 문법 파일의 오류 처리기 코드 앞에 추가되어야합니다. 따라서 메서드는 다음과 같이 나타나야합니다.

이는 Java 스타일 제작을 사용하기 전에 JAVACODE 키워드를 추가해야하기 때문입니다.

관련 문제