这是我的环境变量:
CLASSPATH:
D:\Program Files\Java\jdk1.6.0_07\lib\dt.jar;D:\Program Files\Java\jdk1.6.0_07\lib\tools.jar;.;JAVA_HOME:
D:\Program Files\Java\jdk1.6.0_07
PATH:
%JAVA_HOME%\bin这是我的代码:
class He
{
public static void main(String args[])
{
System.out.println("Hello java!");
}
}在用javac 编译得到He.class之后执行java He得到一下结果:
Exception in thread "main" java.lang.NoClassDefFoundError:He
Caused by:java.lang.ClassNotFoundException:He
        at java.net.URLClassLoader$1.run<Unkown Source>
at java.security.AccessController.doPrivileged<Native Methed>
at java.net.URLClassLoader.findClass<Unkonw Source>
at java.lang.ClassLoader.loadClass<Unkonw Source>
at sun.misc.Launcher$AppClassLoader.loadClass<Unkonw Source>
at java.lang.ClassLoader.loadClass<Unkonw Source>
at java.lang.ClassLoader.loadClassInternal<Unkonw Source>
但是我用jcreator却能的到正确的结果,请问只是为什么?

解决方案 »

  1.   

    class He 该为:public class He
      

  2.   

    那用这个命令先试一下:java -cp ".;D:\Program Files\Java\jdk1.6.0_07\lib" He
      

  3.   

    你这错误还是因为环境变量没配好 在PATH: 
    %JAVA_HOME%\bin 后面再加上%JAVA_HOME\lib%,别忘了中间加上“;”号,试试吧
      

  4.   

    1 你 dir 一下,看看 He.class 在当前目录吗?呵呵
    2 使用 
    java -cp . He 运行看看。 奇怪,你的classpath 里面有对应的路径配置啊?呵呵。搞不懂。 
      

  5.   


    貌似没有问题,到He.java所在的目录再编译运行试试
      

  6.   

    在命令行直接用PATH和CLASSPATH配置就OK了。
      

  7.   

    这是环境变量错了
    classpath    .;D:\Program Files\Java\jdk1.6.0_07\lib\dt.jar;D:\Program Files\Java\jdk1.6.0_07\lib\tools.jar;.; class    .;D:\Program Files\Java\jdk1.6.0_07 
      

  8.   

    貌似应该是
    classpath    .;D:\Program Files\Java\jdk1.6.0_07\lib\rt.jar;D:\Program Files\Java\jdk1.6.0_07\lib\tools.jar;.; 
      

  9.   

    环境变量的问题!!!!可看了你的环境变量好像没什么问题1!你把JDK装到系统的根目录下!因为Jdk安装路径有空格的话会出现问题1!!!此问题我一直没有测试过1!!你可以试试1
      

  10.   

    环境变量的问题!!!!可看了你的环境变量好像没什么问题1!你把JDK装到系统的根目录下!因为Jdk安装路径有空格的话会出现问题1!!!此问题我一直没有测试过1!!你可以试试1