无法在包中找到 class

Not able to find a class in package

考虑包层次结构 folder1/hifolder1 包含 A.java,hi 包含 B.java。

B.java:

package aa.pkg;
public class B { }

A.java:

package hi.aa.pkg;
public class A {B b; }

现在 B.java 编译成功,但是 A.java 没有。

我在 cmd 中使用这些命令(如果当前目录是 folder1):

javac -d hi hi/B.java
javac -cp hi -d . A.java

它说 class 找不到 B。

编译的正确 cmd 命令是什么 A.java 或者代码应该是什么样子才能正常工作?

您必须将 class B 导入 Class A。因为两个 class 在不同的包中。

package hi.aa.pkg;
import aa.pkg.B;
public class A {B b; }