在cmd中可以运行java,但运行javac命令时提示:'javac' 不是内部或外部命令,也不是可运行的程序或批处理文件。
原因:安装java时把jdk的路径和jre的路径选择成一样,就造成覆盖了。这时候你在lib下也找不到tools.jar和dt.jar.
解决:
1)卸载java,直接用windows自带的卸载这两个有关java的程序;
2)重新安装java,安装时有两次选择路径的机会,第一次是让你选择jdk安装路径,选择为C:Program FilesJavajdk1.8.0_144,第二次是让你选择jre的安装路径,选择为C:Program FilesJavajre(在java目录下新建文件夹jre);
3)环境配置(控制面板-系统-高级系统设置-环境变量)
变量名:Path
变量值:C:Program FilesJavajdk1.8.0_144in
打开cmd,输入java,javac和java -verbose都成功,就说明安装成功了;
关于环境配置,网上有很多不同的版本,好吧,用了一晚上挨个试,试到怀疑人生。。。不知道是不是只有我不行,但是写出几种提供参考(万一是我电脑有毛病了呢)
第一种:在path环境变量的最前端加上你自己的jdk的这两个目录path= C:ProgramFilesJavajdk1.7.0_67in;C:Program FilesJavajdk1.7.0_67injrein;
第二种:新建变量(在D盘新建一个java文件夹,在java文件下新建两个文件夹,分别命名为jdk和jre,安装路径分别选择为D:javajdk,D:javajre)
变量名:Path
变量值:C:ProgramDataOracleJavajavapath;%java_home%in;%java_home%jrein
变量名:JAVA_HOME
变量值:D:javajdk
变量名:ClassPath
变量值:.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar;
变量值:C:ProgramDataOracleJavajavapath;%java_home%in;%java_home%jrein
变量名:JAVA_HOME
变量值:D:javajdk
变量名:ClassPath
变量值:.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar;