JDK路径设置无效问题解决

JDK 配置环境无效的两种情况

  • 第 ① 种:输入java -version,显示:'java' 不是内部或外部命令,也不是可运行的程序或批处理文件。这个问题一般出现在电脑第一次配置环境的时候。

  • 第 ② 种:输入java -version,命令可以正常使用,但是显示的版本与Path中配置的版本不对应。这个问题一般出现在电脑已经配置过 JDK,后面重新安装新的 JDK 的时候。

第 ① 种情况的原因

对于第 ① 种情况,原因可能有:

  • Path的路径写入错误,检查后写入正确的即可。

  • 还有一种原因比较特殊,Windows7/8 和 Windows 10 对于Path写法的差别。在 Windows 7/8,可以并且推荐使用%JAVA_HOME%的方式,比如,在Path中添加以下路径:
%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin

但是,在 Windows 10,如果像上面这样子配置 JDK 的路径,系统是扫描不出来的,必须在Path中给出完整的路径信息:

C:\Program Files\Java\jdk1.8.0_221\bin
C:\Program Files\Java\jdk1.8.0_221\jre\bin

第 ② 种情况的原因

参考博客:https://blog.csdn.net/joker_zsl/article/details/104446404


要解释配置的 JDK 与实际运行的 JDK 不一致的问题,需要了解 JDK 的运行原理。在接收到指令后,JDK 的运行顺序如下:

  • C:\Windows\System32\目录下,寻找java.exe javaw.exe javaws.exe三个可运行文件,如果不存在,接着往下面找 ↓
  • C:\Program Files (x86)\Oracle\Java\javapath\路径找。如果仍然没有找到,接着往下找 ↓
  • C:\ProgramData\Oracle\Java\javapath\路径找。如果没有找到,往下找 ↓
  • 在我们自己配置的路径下面寻找

在安装低版本的 JDK 时(JDK 1.8 以下,未考证),一般不会出现前面 3 中情况。但是在安装较高版本的 JDK 时,系统会在这些路径自动生成运行文件,并且将路径写到Path中。所以,问题也出现在这里,我们配置的路径优先级最低,造成配置失效。


如果只想运行自己配置的 JDK 路径,可以通过下面的步骤:

  • 删除C:\Windows\System32\目录下的 3 个文件java.exe javaw.exe javaws.exe

  • Path中,删除C:\Program Files (x86)\Oracle\Java\javapathC:\ProgramData\Oracle\Java\javapath两个路径。

  • Path中,写入自己想要的 JDK 路径。(写入时,要注意是否可以写入%JAVA_HOME形式的路径)

你可能感兴趣的:(JDK路径设置无效问题解决)