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