从一个文件夹编译/运行Java

时间:2012-01-29 21:13:44

标签: java

我有以下目录结构:

folder1/
    folder2/
        compiler.java

对于学校作业,我们 能够从folder1 运行以下命令

javac folder2/compiler.java
java  folder2/compiler

使用javac进行编译。当我尝试使用上面的java命令运行它时,我得到了一个

Exception in thread "main" java.lang.NoClassDefFoundError: folder2/compiler (wrong name: compiler)

2 个答案:

答案 0 :(得分:2)

您有两种选择。

如果您的班级compiler在默认包中,请执行此操作。 (没有包裹声明)

javac folder2/compiler.java
java -cp folder2/ compiler

否则,如果您的班级compiler位于包folder2中,请执行此操作。

javac folder2/compiler.java
java -cp . folder2.compiler

您可以通过在complier

的顶部放置一个包声明,将folder2放入compiler.java包中
package folder2;

答案 1 :(得分:0)

尝试

java -cp . folder2.compiler

确保类编译器位于folder2包中