0

我在一个名为 asdsad 的文件夹中有两个文件夹

.
├── a
│   └── A.java
├── b
│   └── B.java

这是我的 A.java

package asdsad.a;

public class A {
    public A() {

    }

    public int number;
}

这是我的 B.java

package asdsad.b;
import asdsad.a.A;

public class B {
    public B() {

    }

    public int n = 5;

    public static void main(String[] args) {
        A a = new A();
        System.out.println(a.number);
    }
}

现在我在我的终端中 asdsad 文件夹中。我执行javac a/A.java,我没有任何错误。但是当我尝试时javac b/B.java,我得到了这些错误:

b/B.java:2: error: cannot find symbol
import asdsad.a.A;
               ^
  symbol:   class A
  location: package asdsad
b/B.java:12: error: cannot find symbol
        A a = new A();
        ^
  symbol:   class A
  location: class B
b/B.java:12: error: cannot find symbol
        A a = new A();
              ^
  symbol:   class A
  location: class B
3 errors
4

1 回答 1

2

现在我在我的终端里面 asdsad 文件夹

已经错了。您应该在包含它的文件夹中。上一个。

我执行 javac a/A.java,我没有任何错误。

但你还是错了。你应该执行javac asdsad/a/A.java.

但是当我尝试 javac b/B.java

又错了。它应该是javac asdsad/b/B.java

于 2018-06-03T06:10:43.397 回答