1. 安装了JDK , 其版本为jdk-6u25-windows-i586 (我的OS为WinXP) 
2. 配置好了path和classpath
3. 写了一个的"Hello World"程序。(程序绝对没错,绝对,绝对地~)
4. 运行cmd.exe , 输入“javac Hello.java”错误提示如下:
==================================================================================Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/tools/javac
ain
Caused by: java.lang.ClassNotFoundException: com.sun.tools.javac.Main
        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: com.sun.tools.javac.Main.  Program will exit.
==================================================================================

解决方案 »

  1.   

    原程序如下:
    =======================
    public class Hello{
    public static void main(String args[]){
    System.out.println("Hello World~");
    }
    }
    =======================
      

  2.   

    你的cmd进到那个路径了?要么用cd命令进到Hello.java的目录下,然后执行javac Hello.java要么用javac D:/xxx/xxx/Hello.java这种方式
      

  3.   

    如果我没猜错,你仅仅执行javac(后面不带任何java文件)也会出同样的问题
    重装下载,安装JDK吧
      

  4.   

    新增加一个classpath环境变量,classpath指向你的JDK下的lib下的tools.jar和dt.jar
      

  5.   

    美女姐姐,吻一个,您说的非常对,仅执行javac也会出同样的问题。
    但我不想重新装,我想知道问题出在哪里?另外:提示一下,JDK我没有安装到系统盘目录下!
      

  6.   

    您的意思是“新增一个classpath”,还是在我原classpath下增加指向lib下的tools.jar和dt.jar?
      

  7.   

    jdk装完了要配环境变量,否则找不到jdk下的bin文件夹和jdk的类库,这样只能用cmd进入bin,再用-cp包含类库了百度一下很多的,jdk环境变量的配置
      

  8.   

    你的jdk没配置好 ,缺少关键的包 tools.jar