Java错误包不存在

标签 java testing import directory package

我的主文件夹是 ABC,里面有 2 个名为 classes 和 src 的文件夹,src 里面有 2 个名为 objectFile 和 testFile 的文件夹,objectFile 里面是 ABC.java,而 testFile 里面是 TestABC.java。(里面的 classes 是一样的,但是 .类)现在 ABC 包含

package objectFile;
public class ABC
private int something;

而 TestABC.java 包含

package testFile;
import objectFile.ABC;

public class TestABC

错误提示 TestABC.java:2: error: package objectFile does not exist

导入对象文件.ABC;

最佳答案

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

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

请注意,这不仅会编译 TestABC.java,还会编译 ABC.java(因为您的 import 语句)。 p>

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

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

这将cf文件名myJavaArchive.jarentrypoint testFile/TestABCclasses 目录中的所有文件组成。

因为它是入口点,所以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

关于Java错误包不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35380638/

相关文章:

java - 强制显式删除 Java 对象

url - 为什么我的内部测试轨道选择加入 URL 不起作用?

opencv - 导入错误 : libopencv_core. so.3.0: 无法打开共享文件

objective-c - 是否有放置类别导入语句以便所有类都能看到的地方?

使用 WSGI gunicorn 在 Django 中导入 Python 应用程序时出错

java - 如何在范围/菜单之外引用数组?

java - 如何从具有不同值类型的Map中获取值? ( java )

java - jayway 2.2.0 删除 jsonpath 中的括号

ios - 无法将新版本添加到 testflight

测试 bignum 算术