Java Can';不能从同一个包导入类
我是Java新手,找不到我的错误,编译器给了我以下错误消息:Java Can';不能从同一个包导入类,java,import,packages,symbols,Java,Import,Packages,Symbols,我是Java新手,找不到我的错误,编译器给了我以下错误消息: ->javac B.java B.java:3: error: cannot find symbol import a0.A; ^ symbol: class A location: package a0 我的课程非常简单: package a0; import a0.A; public class B{ public static void main(String[] args){
->javac B.java
B.java:3: error: cannot find symbol
import a0.A;
^
symbol: class A
location: package a0
我的课程非常简单:
package a0;
import a0.A;
public class B{
public static void main(String[] args){
System.out.println("Hello!");
}
}
B类
package a0;
public class A {
}
甲级
我在Ubuntu 16.04下工作,两个类都在同一个目录中。您不需要在同一个包中导入类 构建错误?
A
中是否存在编译错误?不,这是我得到的唯一错误。是否在类路径中指定了包的位置?这两个文件与javac-cp位于同一目录中。;。。B.java
(;
可能需要替换为:
,具体取决于操作系统)。虽然你说的是真的,我们通常应该这样编写代码,但它仍然没有被禁止,所以真正的问题是在其他地方(很可能是缺少正确的类路径)。@Pshemo我也是这么想的。您知道我如何进一步指定错误吗?@Jonas error意味着编译器无法在a0
包(目录)中定位A.class
。所以,要么包的位置不在OP正在使用的类路径中,要么使用的编译器无法在需要时动态编译A.java
。我没有用Java安装Ubuntu,所以无法测试它。@Jonas,你必须指定a0是一个包。当从上面的目录运行时,javacA0/B.java将工作。