jdk环境变量配置改变不生效的问题
程序员文章站
2022-05-04 14:01:39
在工作中两次遇到jdk配置上的这个问题:将环境变量中的jdk路径修改之后,使用-version查看,版本号还是之前的,也就是说修改未生效。甚至当我将Path变量中的jdk路径配置都删除了之后,使用-version还是会输出之前的jdk信息。所以肯定不是jdk本身的问题,后来各种排查试验,偶然间想到了 ......
在工作中两次遇到jdk配置上的这个问题:将环境变量中的jdk路径修改之后,使用-version查看,版本号还是之前的,也就是说修改未生效。甚至当我将path变量中的jdk路径配置都删除了之后,使用-version还是会输出之前的jdk信息。所以肯定不是jdk本身的问题,后来各种排查试验,偶然间想到了可能是系统加载环境变量的问题,系统加载环境变量是从前往后顺序加载的。
所以我将jdk的配置,提到path变量的最前面,让系统优先加载。然后-version查看,问题解决。那就是这个问题,于是去从前往后查看系统变量中是否有java.exe。果然在%systemroot%\system32路径下找到了java.exe、javaw.exe、javaws.exe三个文件。
问题解决,结论是,安装jdk的时候,会复制这三个文件到%systemroot%\system32路径下,系统加载环境变量的时候如果先走到这个路径,就会用这个路径下的java程序。最好的办法是配置环境变量的时候将jdk路径配置到最前面,而不是像网上大多数教程一样配在最后面。