java "cannot find symbol"- 如何导入同一目录中的文件?

标签 java

我的目录中有两个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/

相关文章:

java - SLF4J:类路径包含多个 SLF4J 与 maven 的绑定(bind)

java - Android从JSON获取特定数据

java - 如何在java中制作分层Json

Java - 子类验证设计模式

使用递归的 Java 多米诺骨牌平铺 : second if block gets called with already updated values

java - 在java中单行编辑文件

java - 如何正确验证不同的 XSD 版本?

java - BigInteger 使用多少空间?

java - 什么是在对象中只允许一个非空字段的好方法

java - ANDROID:无法将 android:theme ="@android:style/Theme.Black.NoTitleBar.Fullscreen"添加到 list 文件