Java 错误包不存在

Java error Package does not exist

我的主文件夹是ABC里面有2个文件夹叫classes和src,src里面有2个文件夹叫objectFile和testFile,objectFile里面是ABC.java而testFile里面是TestABC.java.(在 classes 中是相同的,但 .class 代替)现在 ABC 包含

package objectFile;
public class ABC
private int something;

而测试ABC.java 包含

package testFile;
import objectFile.ABC;

public class TestABC

错误说测试ABC.java:2:错误:包对象文件不存在

导入objectFile.ABC;

您是否指定 sourcepath?这告诉编译器在哪里可以找到它需要导入的 类。

javac -sourcepath src -d classes src\testFile\TestABC.java

请注意,这不仅会编译 TestABC.java,还会编译 ABC.java(因为您的 import声明)。

然后您可以使用 jar 命令将 类 放入存档中:

jar cfe myJavaArchive.jar testFile/TestABC -C classes .

这将cf文件名创建一个新的jar myJavaArchive.jarentrypoint testFile/TestABC类[=42= 中的所有文件制成]目录。

因为是入口,TestABC必须有一个main方法,例如

package testFile;

import objectFile.ABC;

public class TestABC {

    public static void main(String[] args) {
        ABC abc1 = new ABC(1);
        ABC abc2 = new ABC(2);

        System.out.println("abc1.i is " + abc1.getI());
        System.out.println("abc2.i is " + abc2.getI());
    }
}

package objectFile;

public class ABC {

    private int i;

    public ABC(int i) {
        this.i = i;
    }

    public int getI() {
        return i;
    }
}

然后你可以使用java -jar命令执行代码:

java -jar myJavaArchive.jar