我目前正在学习 Java,并将我的命令提示符用作编译器。但是每次我执行java命令后跟我的测试类“Hello”时,我都会收到以下错误消息:
Exception in thread "main" java.lang.NoClassDefFoundError: Hello (wrong name: hello/Hello)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:792)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
现在我检查了我的“CLASSPATH”环境变量,它是正确的,如下所示:.;C:\Program Files\Java\jdk1.7.0_25\bin; 我什至尝试删除.; 从 CLASSPATH 开始,但它没有做任何不同的事情。现在,通过创建 .java 类的 .class 版本,我的javac命令可以正常工作。但我就是无法让它实际执行java命令。
我的类的名称是Hello,所以我输入了javac Hello.java来将我的文件编译为类文件,它可以工作。但是当我输入:java Hello时,我得到了上述错误信息。我已经在我制作的 NetBeans IDE 上测试了这个程序,它运行良好,没有错误。
可能发生什么会阻止我执行我的 java 命令来运行 .class 文件?