我的目录中有两个java文件,它们都不在包中。我希望其中一个能够引用另一个。这样做的正确方法是什么?
当前在 A 类中,我尝试引用 B 类,并收到此错误:
[javac] A.java:11: cannot find symbol
[javac] symbol : constructor B(java.lang.String)
[javac] location: class B
[javac] B b = new B(path);
[javac] ^
以下没有任何效果:
- 在 A 中执行“导入 B;”
- 添加“package myPackage;”给 A 和 B
谢谢!
最佳答案
此外,如果每个文件中都有包引用,则需要从根目录编译它。我遇到了同样的问题,点击此页面,但没有一个答案真正有帮助。所以我有 2 个文件:
~/work/com/domain/pkg/library/A.java
~/work/com/domain/pkg/library/B.java
A.java:
package com.domain.pkg.library;
class A {
}
B.java:
package com.domain.pkg.library;
class B {
A a = new A();
}
您需要进入 ~/work 并输入:
javac com/domain/pkg/library/B.java
希望对某人有帮助。
关于java "cannot find symbol"- 如何导入同一目录中的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1799983/