本人刚开始学java,刚安了JDK1.6,安装目录为:C:\Program Files\Java(Java目录下又有jdk1.6.0_02,jdk1.6.0_20,jre1.6.0_02这三个目录,设置环境变量时我选了第二个)。我设置的环境变量为:PATH: C:\Program Files\Java\jdk1.6.0_20\bin  CLASSPATH: C:\Program Files\Java\jdk1.6.0_20\jre\lib\rt.jar;C:\Program Files\Java\jdk1.6.0_20\lib\tools.jar  .然后我在DOS下编译HelloWorld.java程序,编译之后已经生成了HelloWorld.class文件。但用java HelloWorld命令运行程序时出现了错误。为此我还改变了环境变量classpath的值(改了两次,path不变),分别改为:1。CLASSPATH:C:\Program Files\Java\jdk1.6.0_20\lib\dt.jar;C:\Program Files\Java\jdk1.6.0_20\lib\tools.jar 2. CLASSPATH: C:\Program Files\Java\jdk1.6.0_20\lib .以上三次环境变量的设置都出现了同样的错误:Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld/class
Caused by: java.lang.ClassNotFoundException: HelloWorld.class
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:18
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
Could not find the main class: HelloWorld.class.  Program will exit.
请各位指教一下错在哪里了?应该怎样解决?谢了!

解决方案 »

  1.   

    不需要设置CLASSPATH。
    小程序指的是Applet吗?若是,肯定不能通过java命令运行。
      

  2.   

    我记得我只改了path classpath没动过,另外楼主怎么会有两个jdk呢???
    我也刚学,持续关注
      

  3.   

    回答楼上的朋友:
    2楼:
    我指的小程序只是几行代码的HelloWorld程序(初学者的HelloWorld程序)。
    3楼:
    安装JDk后在Java目录下就有三个文件夹了,分别为:jdk1.6.0_02,jdk1.6.0_20,jre1.6.0_02 。
      

  4.   

    运行时用了java HelloWorld命令。
      

  5.   

    你把你的HelloWorld 贴下看看
      

  6.   

    代码是:
    public class HelloWorld
    {
        public static void main(String[] args) {
           System.out.println("Hello,World");
        }
    }
      

  7.   

    OK,设置CLASSPATH的时候,保证第一个路径是.,也就是当前路径
      

  8.   

    顺便告诉你一个技巧
    设置环境变量的时候,设置好JAVA_HOME后,设置CLASSPATH的时候使用如下设置,就基本没什么问题了
    CLASSPATH=.;%JAVA_HOME%\jre\lib\rt.jar;%JAVA_HOME%\lib\tools.jar
      

  9.   

    设置classpath 的时候前面要加“.”号是吗?
      

  10.   

    已经编译生成HelloWorld.class文件了。
      

  11.   

    安装完Java SDK后,Win + R。cmd 回车。运行 java和 javac,没有出现“'javac' 不是内部或外部命令,也不是可运行的程序
    或批处理文件。”就可以使用了。否则将javac所在的目录加到PATH了就可以了。D:\Temp\Examples
    |-- HelloWorld.class
    `-- HelloWorld.javaD:\Temp\Examples>javac HelloWorld.java
    D:\Temp\Examples>java HelloWorld
    Hello,World

      

  12.   


    已经得了,原来是CLASSPATH的问题。谢谢各位了!