今天JAVA课后,为了验证老师上课所讲path的作用
在安装好JDK后,我并没有将java下的.../bin 路径添加到环境变量path中,
理论上,输入这些命令应该提示 command not find ...第一步,输入 “set path” 显示路径。查看了一下,确认没有将java目录添加进来。第二部,输入“ java”命令。出现一堆提示信息。//难道java命令式可以运行的吗?第三步,进一步输入“java -version” 出现我安装的JDK版本信息。   //这里也可以。第四步,输入 “javac”  并没有出现命令用法提示 。显示 “command not find ” //和理论相符进行了这几步的反面验证path的作用后。疑问:
  
因为没有添加JDK的路径,“javac”命令自然显示 command not find 。
但是为什么 “java”命令 可以在没有添加path的情况下运行,且可以 显示 -version信息?
还请各位帮助解答。谢谢

解决方案 »

  1.   

    你看下%SystemRoot%\system32下面有没有java.exe。如果有就对了,虽然你没设置JAVA_HOME,这目录下有还是可以用java命令的。另外你看下应该没有javac.exe,所以用不了javac
      

  2.   

    可能是你的电脑上已经有了java虚拟机,他可以运行class文件。
      

  3.   

    之前我也遇到过类似的问题,java可直接运行,但javac是不行的,
      

  4.   

    这是因为安装JDK(JRE)时, Windows 的JDK(JRE)安装程序会自动放一份java(.exe)到C:\Windows\system32.
    如果输入java 指令,系统会从第一个路径开始找有无java(.exe)工具程序,如果没有,再找下一个路径有无java(.exe)工具程序……找到的话就
    执行. 因为系统环境PATH里已经设置了C:\Windows\system32, 所以java是可以执行的,所以就不用我多说了。javac找不到命令,那是因为系统遍历完所有
    的PATH路径后,都没有找到javac。