相信大家看到这标题肯定暗骂月经贴吧。。相关的帖子我都读过了还是没有解决问题。
OK,言归正传。小弟刚从装了jdk1.5.0_06。然后就运行HelloWorld程序试了试,java HelloWorld。然后出现Exception in thread "main"java.lang.NoClassDefFoundError: HelloWorld的错误提示,看了其他贴子里说是classpath的设置问题。
然后我就看了下我环境变量里的设置,设置如下:classpath值是C:\Tomcat 5.5\common\lib\jsp-api.jar;C:\Tomcat 5.5\common\lib\servlet-api.jar.;C:\Java\jdk1.5.0_06\jre\lib\rt.jar;C:\Java\jdk1.5.0_06\lib\tools.jar;c:\java\jdk1.5.0_06\lib\dt.jar
java_home值是c:\java\jdk1.5.0_06
path值是c:\java\jdk1.5.0_06\bin
安装路径c:\java\jdk1.5.0_06.
请大家帮忙看看设置有什么问题,谢谢了

解决方案 »

  1.   

    我就是这么设置的,不能运行,所以来请教下大家。
    另外是不是系统变量和用户变量都要设path,java_home和classpath呢?
      

  2.   

    应该不是classpath的问题。从报的错误看,能找到java命令,似乎是main函数写的不对。
      

  3.   

    但是java -classpath . HelloWorld就能成功运行并得到正确的output。。那程序本身应该不存在问题吧
      

  4.   

    你的classpath写太乱了,而且没有包含当前目录,也就是一个点.;
      

  5.   

    1,加在classpath得最前面,比如说.;C:\Tomcat 5.5\common\lib\jsp-api.jar;C:\Tomcat 5.5\common\lib\servlet-api.jar.;C:\Java\jdk1.5.0_06\jre\lib\rt.jar;C:\Java\jdk1.5.0_06\lib\tools.jar;c:\java\jdk1.5.0_06\lib\dt.jar2,如果是我的话,我就删除系统classpath,而是对每一个java程序单独设置classpath,这样就不会互相影响,乱不了。你自己看着办吧。
      

  6.   

    给你准确的答案:
    因为我也遇到了。
    http://blog.csdn.net/chszs/archive/2007/05/05/1597145.aspx
      

  7.   

    ^0^谢楼上2位。各15分送上。
    我刚找到了个更加方便的方法,那些C:\Java\jdk1.5.0_06\jre\lib\rt.jar什么的都不用加。只要在系统变量的classpath最后加上;.就可以了。。虽然不太清楚原理,不过问题是解决了~
      

  8.   

    官方网页上只说明了怎么设置PATH,其实这已经够用了。
    JAVA_HOME, CLASSPATH是不需要的。javac.exe和java.exe会自动加载JDK,JRE里面所有的软件包,不需要把它们加入CLASSPATH。如果设置了CLASSPATH,在里面加入C:\JDK\LIB是没有用的。对单独项目的CLASSPAT管理,建议放到单独项目的执行脚本里,这样管理起来方便,项目之间不会互相影响。