Java 龙书编辑者

Java 龙书编辑者,java,compiler-construction,cmd,Java,Compiler Construction,Cmd,我在学习编译器,我在试着运行龙书的编译器,我从页面下载了源代码,并按照书上的所有说明进行操作 javac lexer/* .java javac symbols/* .java javac inter/* .java javac parser/* .java javac main/* .java 然后跑 java main.Main 并输入测试文件的名称,cmd将提示以下错误: Exception in thread "main" java.lang.Error: near line 1:

我在学习编译器,我在试着运行龙书的编译器,我从页面下载了源代码,并按照书上的所有说明进行操作

javac lexer/* .java
javac symbols/* .java
javac inter/* .java
javac parser/* .java
javac main/* .java
然后跑

java main.Main 
并输入测试文件的名称,cmd将提示以下错误:

Exception in thread "main" java.lang.Error: near line 1: syntax error
   at parser.Parser.error(Parser.java:15)
   at parser.Parser.match(Parser.java:19)
   at parser.Parser.block(Parser.java:29)
   at parser.Parser.program(Parser.java:23)
   at main.Main.main(Main.java:9)

由于我从dragon book页面()下载了代码,我认为那里没有任何错误,我甚至用这本书检查了代码,代码是一样的。很抱歉,如果这像是一个noob问题,但是你知道我做错了什么吗?

阅读你提供的链接中的Java源代码,似乎“dragon front”解析器希望从标准输入读取其输入。。。不是来自您在标准输入中提供名称的文件。试试这个:

    java main.Main < your_input_file
javamain.main<您的输入文件

javac使用完整的java类名,例如:javac lexer.java,java使用完整的限定类名。确保您已经编译了所有需要的类。同时阅读“主”代码。它是否需要任何cmd行参数?寻求调试帮助的问题(“为什么此代码不起作用?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现它所需的最短代码。没有明确问题陈述的问题对其他读者没有用处。请参阅。@Nazgul,不,
javac
在为其提供
*.Java