重装系统后,重新设置了下环境变量,path classpath都设好了,进入cmd运行java,出现一大堆帮助信息;运行java -version,出现了版本信息,证明路径配置正确。可再运行javac却出现:'javac'   不是内部或外部命令,也不是可运行的程序或批处理文件于是我注销系统,再运行javac,正常了,出现了javac的用法。两个命令都在同一个目录下,为什么有以上差异呢?我在网上搜索了一下,也有人碰到了同样的问题,都是重启一下就好了,也不知是什么原因。哪位高手能解释?

解决方案 »

  1.   

    我想到的唯一解释,你的cmd并不是在配置环境环境变量和
    路径,注意路径是必须配置的,之后启动的。你应该配置完毕,然后运行cmd.
    你可以输入
    path
    来查看当前的path里面是否存在jdk/bin子目录
    javac 在jdk下才有
      

  2.   

    不是的,发现javac不能运行之后,我又退出cmd重新进入,再试,还是一样。。再说,java都可以,javac怎么就不行呢?
      

  3.   

    1 java 在jre里面也有的,你安装jdk的时候jre目录会跟着改变
    2 windows 自己就有一个java
    3 javac 可是jdk里面才有,jre没有
    4 所有命令,必须在path里面才能自动找到。注意,不是CLASSPATH
      

  4.   

    感谢java2000_net的指点!你是意思是说,我之前可能是path没配置好,运行的java.exe不是jdk的java,而是windows或jre里面的java?可为什么我注销再登录之后就一切OK了呢?我什么都没动过,登录后第一件事就是开始-运行 cmd - 输入javac 回车
      

  5.   

    是否能运行,关键看
    cmd输入 
    path 
    来查看当前的path里面是否存在jdk/bin子目录 如果有,则可用不用再讨论了! 我也不希望你重新安装操作系统来验证。如果你以前用过DOS, 你就会非常明白这个错误的原因了!哈哈哈哈!!!
      

  6.   

    好的,到此为止,不讨论了。我当时没有输入path 来查看当前的path里面是否存在jdk/bin子目录,也许真的没有吧。。谢谢 java2000_net 老紫竹 ,结贴。