0

我目前正在尝试阅读我在网上找到的一些 Java 源代码来学习和学习这些材料。我想先编译这些文件,以确保它们在我研究之前能正常工作。但是,当我尝试编译时,编译器会抱怨它找不到一些需要导入的文件。所以打开main.java,我发现

 package br.com.seimos.minijava;

 import java.io.BufferedReader;
 import java.io.FileNotFoundException;
 import java.io.FileReader;
 import java.util.ArrayList;

 import br.com.seimos.minijava.parser.MiniJavaParser;
 import br.com.seimos.minijava.syntaxtree.Program;
 import br.com.seimos.minijava.visitor.TreeDumper;
 import br.com.seimos.minijava.visitor.TreeFormatter;

我得到的错误来自于无法找到MiniJavaParserTreeDumper...第三块代码。这些文件与主文件存在于同一目录中,那么发生了什么?什么是br.com.seimos.minijava东西?我尝试将文件放在那些文件夹中(如 中br\com\seimos\minijava\PUT_FILES_HERE),但仍然不行。是否br需要在根目录下?

谢谢,我意识到这可能是一个非常基本的问题......

4

3 回答 3

0

因为import br.com.seimos.minijava.parser.MiniJavaParser;您的MiniJavaParser班级必须在目录中br\com\seimos\minijava\parser\而不是br\com\seimos\minijava\. 其他类也是如此。尝试改变它。

于 2012-11-02T04:30:24.563 回答
0

你在正确的轨道上。您需要按照br/com/seimos/minijava/...每个文件的包名称将这些文件放入其中。Java 要求您将文件放在与其包名称匹配的目录层次结构中。

然后,您需要使用如下命令进行编译:

javac br/com/seimos/minijava/parser/MiniJavaParser.java

这在命令行中有点不方便,尤其是对于一个较大的项目,所以你最好获得一个 Java IDE 并让它帮助你安排文件。

于 2012-11-02T04:30:52.557 回答
0

所需的目录结构是br/com/seimos/minijava/OTHER_FOLDERS/SOURCE_FILES.java. 例如,路径MiniJavaParser应该是br/com/seimos/minijava/parser/MiniJavaParser.java. 然后,您应该从br.

如果您使用的是 Eclipse 或其他 IDE,您应该配置您的项目设置来处理这个问题。

于 2012-11-02T04:31:47.807 回答