环境:Ubuntu 12.04,JRE 1.6.0
在我的zsh中,即使是简单的hello.java
也无法正常运行。
使用javac
进行编译时可以,但输入java hello
:
Exception in thread "main" java.lang.NoClassDefFoundError: hello
Caused by: java.lang.ClassNotFoundException: hello
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)
Could not find the main class: hello. Program will exit.
答案 0 :(得分:4)
您的班级名称似乎是helloworld
,您试图说java hello
(因此JVM试图找到一个名为hello
且不存在的类)
请尝试java -classpath . helloworld
答案 1 :(得分:0)
班级名称为helloworld
,您试图说java hello
。检查一次
答案 2 :(得分:0)
尝试java helloworld。默认情况下,Java将使用与文件相同的名称进行编译。
所以javac helloworld.java输出helloworld.class,这是你运行字节码所需要的。