【发布时间】:2020-06-16 03:26:45
【问题描述】:
使用 cmd 编译:javac Test.java。但是编译失败,说它找不到符号 parser.prog()。有什么想法吗?
import org.antlr.runtime.*;
public class TestT {
public static void main(String[] args) throws Exception {
// Create an TLexer that feeds from that stream
//TLexer lexer = new TLexer(new ANTLRInputStream(System.in));
TLexer lexer = new TLexer(new ANTLRFileStream("input.txt"));
// Create a stream of tokens fed by the lexer
CommonTokenStream tokens = new CommonTokenStream(lexer);
// Create a parser that feeds off the token stream
TParser parser = new TParser(tokens);
// Begin parsing at rule prog
parser.prog();
}
}
【问题讨论】:
-
请发布
TParser的文档/代码的链接。 -
请注意,antlr 生成了这个解析器。我只写语法。
-
我在其中找不到方法
prog()。我在Parser 或Recognizer 中也找不到它。看看here,也许你会找到解决办法。 -
那么生成解析器的方法是什么?任何想法? @akuzminykh