Java class文件无法运行。

如图,机上装了JDK和MyEclipse,系统环境都已经设置好。定了个简单的Hello World程序,在命令行窗口能编译,但使用“java Hello“命令就出现如图文字。

C:\Users\Administrator>d:

D:\>cd java development

D:\Java Development>javac Hello.java

D:\Java Development>java Hello
Exception in thread "main" java.lang.NoClassDefFoundError: Hello
Caused by: java.lang.ClassNotFoundException: Hello
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Could not find the main class: Hello. Program will exit.

这个问题里提到的五点,http://zhidao.baidu.com/question/242168443.html
我都检查过了没有问题。

好像MyEclipse也不能用,不知是什么回事。英文的,刚开始用,有点麻烦。

烦请各位指点一下,谢谢!

Exception   in   thread   "main "   java.lang.NoClassDefFoundError:   HelloWorld
呵呵,这个嘛,就是著名的类路径(classpath)问题啦。实际上,类路径是在编译过程就
涉及的Java中的概念。classpath就是指明去哪里找用到的类,就这么简单。由于我们的
HelloWorld没用到其它的(非java.lang包中的)类,所以编译时没遇到这个问题。运行
时呢,就要指明你的类在哪里了。解决方法嘛,可以用下面的命令运行:
java   -classpath   .   HelloWorld
“.”就代表当前目录。当然这样做有点麻烦(是“太麻烦”!),我们可以在环境变量
中设置默认的classpath。方法就照上述设置path那样。将classpath设为:
classpath=.;c:\jdk1.2\lib\dt.jar;c:\jdk1.2\lib\tools.jar   后面的两个建议也设上
,以后开发用的着。
java   -classpath   .   HelloWorld(再不出来我就不学java了)

Exception   in   thread   "main "   java.lang.NoSuchMethodError:   main
(//咣当)别,坚持住。看看你的代码,问题出在main方法的定义上,写对地方了吗,
是这样写的吗:
public   static   void   main(String   args[])   {   //一个字都不要差,先别问为什么了...
对,包括大小写!
java   -classpath   .   HelloWorld   (听天由命了!)
Hello   World!
(faint!终于...)
欢迎来到Java世界!所以说,无法运行HelloWorld   真的并不是一个“最简单的问题”。
附:HelloWorld.java
//   HelloWorld.java
public   class   HelloWorld   {
public   static   void   main(String   args[])   {
System.out.println( "Hello   World! ")   ;
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-09-18
Exception in thread "main" java.lang.NoClassDefFoundError: Hello
Caused by: java.lang.ClassNotFoundException: Hello
这个错误一般是你的classpath有问题,重新配置一下就行了 要求你的class文件必须在这个路径下你才可以运行的
第2个回答  2011-09-18
你肯定修改了classpath变量
把classpath变量最前面加上一个点和一个分号应该就可以了,不可以可以在联系我
第3个回答  2011-09-18
你输入
dir ./w
看看你的Hello.class在不在那个目录下面
你javac Hello.java
那么生成的也是Hello.class
当然你也要java Hello
这个命令式区分大小写的,一定要保持一致才行
如果还不行的话
再java -version看看能不能显示java版本
再看看你的path设置是不是少了这一句,网上普遍的教你配置环境变量都是%JAVA_HOME%的,但是如果你的path里少了这句,有些功能就会障碍,这是系统的环境变量,java环境变量只能添加,不能覆盖
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;
这种情况还真就3种问题
1、命令不对
2、文件不对
3、系统环境变量不对
第4个回答  推荐于2016-02-29
输入命令 dir *.class看一下
你输入的是java hello 还是 java Hello
名字要和class文件保持一致;
另外在执行之前先 set classpath=.本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网