让JFlex和Cup一起工作

时间:2013-04-23 01:46:55

标签: java compilation jflex

我正在尝试使用JFlex和Cup实现解析器。现在我只是想让他们编译下面链接中找到的简单示例程序。

  

http://www.cs.rit.edu/~pal6640/cup-example/simple-expr.html

要从我运行的parser.java脚本创建sym.javacup文件:

java –jar java-cup-11a.jar parser.cup

接下来,我使用JFlex.jar创建lexer java文件:

java –jar JFlex.jar lexer.lex

然后编译:

javac –classpath java-cup-11a.jar Yylex.java sym.java parser.java

编译命令抛出 12个错误。他们都说

  

无法找到符号变量扫描器

我认为我已正确设置了所有环境变量。有谁知道我做错了什么?

1 个答案:

答案 0 :(得分:1)

Java CUP分发两个jar文件:executable standalone Jar-packageCUP runtime-library to use in conjunction with CUP generated parsers。 CUP生成的解析器需要第二个。因此,你的第三个命令应该是

javac –classpath java-cup-11a-runtime.jar Yylex.java sym.java parser.java