javah javac 不是内部或外部命令 解决方法

配置JNI环境时,遇到一个非常奇怪的问题,java环境变量配置好了后,cmd下执行java -version 正确,但是javah 或者javac 则提示不是内部或外部命令。


下面就是开始找原因了:


1、怀疑java环境变量配置有问题,对照别人的做法:

JAVA_HOME设置为:

C:\Program Files\Java\jdk1.5.0_12(自己jdk的安装位置)

CLASSPATH设置为:

.;%JAVA_HOME%\lib;

PATH设置为:

%JAVA_HOME%\bin;

确认自己配置环境变量没问题,而且cmd下执行命令java -version 也正确。


2、怀疑%JAVA_HOME%\bin下面没有javac.exe、javah.exe

经检查,发现确实有这两个文件。实在不知道何原因。难道是jdk安装不对,正准备重装jdk时,告诉了同事这个奇怪的问题,恰巧同事也曾遇到过该问题。


直接给出解决方法:

将系统环境变量Path中有关java环境变量的配置拷贝一份到用户变量,重开cmd窗口即可。参考下图:

javah javac 不是内部或外部命令 解决方法_第1张图片


javah javac 不是内部或外部命令 解决方法_第2张图片


太坑爹了有么有 谁能告诉我为什么啊。。。。

你可能感兴趣的:(JNI,javah,javac)