【发布时间】:2013-11-29 16:02:49
【问题描述】:
我知道这个问题很基础,但是经过几次谷歌搜索后我找不到答案。我是 Java 新手。今天我学习了java包。我有这样的A类:
package hello;
public class A {
}
我也有使用 A 类的 B 类:
package hello;
public class B {
public static void main(String[] args) {
A a = new A();
}
}
A 类和 B 类放在“hello”文件夹中。当我编译 B 时,我得到了这样的错误:
B.java:5: error: cannot find symbol
A a = new A();
^
symbol: class A
location: class B
B.java:5: error: cannot find symbol
A a = new A();
^
symbol: class A
location: class B
2 errors
编辑:在 cmd 中输入
>>javac A.java
>>javac B.java
B.java:5: error: cannot find symbol
A a = new A();
^
symbol: class A
location: class B
B.java:5: error: cannot find symbol
A a = new A();
^
symbol: class A
location: class B
2 errors
我尝试使用这个命令编译:
>>javac *.java
>> java B
Exception in thread "main" java.lang.NoClassDefFoundError: B (wrong name: hello/
B)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
【问题讨论】: