javac不是内部或外部命令
2017年10月06日发布
-
javac不是内部或外部命令:初学者刚刚学java的时候遇到的最多的问题就是javac不是内部或外部命令,实际上这是一个环境变量配置的问题,本来笔者是打算针对此问题写一篇比较深入一点的教程分享给大家,但考虑简单化,并看到有一些关于javac不是内部或外部命令的相关教程已经分享的很好了,所以也就没必要再次去浪费时间分享了,所以根据笔者的经验,为你精选了真心有用且可行的方案。
'JAVAC' 不是内部或外部命令解决方法
'JAVAC' 不是内部或外部命令,也不是可运行的程序 或批处理文件。问题解决方法分享!
'JAVA' 不是内部或外部命令,也不是可运行的程序 或批处理文件解决办法相似。
原因一:没有安装jdk,只安装了jre
jdk1.7.0_60+jre才是完整的,如果没有安装jdk的话,在cmd里边输入javac就会提示”'JAVAC' 不是内部或外部命令,也不是可运行的程序 或批处理文件“
解决方法是安装jdk
安装了JDK和JRE,但是配置失败
安装了JDK的话,正常CMD下输入JAVAC时一定可以成功的。就会有如下信息提示
所以,是环境配置有问题,所以检查三处地方,第一”JAVA_HOME”
JAVA_HOME的内容是jdk安装目录。如小编安装的位置:D:\Program Files (x86)\Java\jdk1.7.0_60,并且后边不带分号
第二,检查CLASSPATH,这是一个jar包的调用。.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(前面有点号和分号,后边结尾也有分号。
或者可以写成“.;%JAVA_HOME%\lib”如图所示,一样的效果。
第三检查“PATH"变量是否正确
PATH变量很简单,就是jdk的bin目录的意思。%JAVA_HOME%\bin;
以上几处完成了就不会有问题了。
另外的情况:
运行javac 报告javac不是内部或外部命令,但是运行java、java-version正常
以前装jdk 从来没遇到过今天这种情况,各种解决办法试了一下午,终于出来了,说一下解决的办法:
JAVA_HOME 、classpath 都在系统变量中建立好;
java_home 添加jdk的安装目录,注意java_home 要书写正确:安装目录后边不要加分号。
classpath 的对应值是 .;%java_home%\lib\dt.jar;%java_home%\lib\tools.jar 注意这个地方不要漏掉最前面的 点 .
在原来的path值后面添加 ;%java_home%\bin;%java_home%\jre\bin
确定后 ,重新启动cmd 输入 javac 这次就好用了。记得要重启哦。
前面的网上都有了,我今天遇到的是什么呢?
就是我把java_home 写成 javahome 了 少了 _ ,然而我的后面引用时却用的%java_home%这样就大错特错了,因为我压根就没建立java_home的环境变量 我建的是javahome,所以不对。
说白了 java_home 就是一个变量名 后边对应着变量值,但是如果声明的变量的变量名和使用的变量名不一样,怎么能对呢,呵呵,这个原理和编程一样。
同学们 ,一定要注意这个问题,以此类推 其他的变量名也要注意是否正确。
另一种详细的解决方案:
jdk 环境变量配置 及 javac 不是内部或外部命令的解决
一、jdk安装
jdk的安装直接按照提示一步步进行,需要注意的是记住安装路径。
二、环境变量的配置
需要配置的环境变量有三个:java_home , path 和classpath;步骤如下:
1、右击计算机,点击属性,在弹出面板里点击 高级系统设置,弹出如图所示面板:
点击 环境变量 :
2、添加上述上个环境变量(以安装目录D:\Program Files\Java\jdk1.8.0_05为例)
a) java_home环境变量一般没有,需要点击新建来新创建,
其值为:D:\Program Files\Java\jdk1.8.0_05 (安装路径) 如图:
注意: D:\Program Files\Java\jdk1.8.0_05 后面没有分号。
b)path 环境变量一般有,直接编辑即可,
其值为:%java_home%\bin;%java_home%\jre\bin; 如图:
%java_home% 表示引用java_home 环境变量的路径
注意:%java_home%\bin;%java_home%\jre\bin; 需要写在path变量的最前面。
c) classpath环境变量有则编辑,若无新建,
其值为:.;%java_home%\lib; 如图:
.;%java_home%\lib; 中的 “.” 表示当前路径,需要加上。
至此环境变量配置完成。
d)验证的话可以打开 cmd ,输入分别输入java -version , java ,javac 命令 会弹出:
三、有些人输入javac时,会弹出“javac 不是内部或外部命令....”之类的话。一般原因有两个:
1)标点不是英文状态下的,这个自己查一下即可
2)还有就是没有注意到上面黄色阴影的注意部分:
注意: D:\Program Files\Java\jdk1.8.0_05 后面没有分号。
注意:%java_home%\bin;%java_home%\jre\bin; 需要写在path变量的最前面。
只要注意一下就好啦。
好了,上面是关于javac不是内部或外部命令最详细的各种情况和解决方案。