今天是第一天实习,公司指导老师在实习生群里发一个Springboot项目,让我们安装运行,我马不停蹄下载了下来,然后我发现这个程序是需要jdk1.8的运行环境,很不巧,我用的是jdk15和jdk16,为了解决这个问题,我去从甲骨文官网下了jdk1.8。
然后照着配置jdk1.8的教程来安装配置jdk1.8,先是下载,然后安装到C:\Program Files\Java\jdk1.8.0_321这个目录下,然后去更改我之前配置好的JAVA_HOME目录为我需要的C:\Program Files\Java\jdk1.8.0_321。如下图所示
![](https://img-blog.csdnimg.cn/a4818ef677564f389e26977fa8d2d46e.png)
然后开开心心的cmd输入java -version来验证结果,结果居然是我都版本依然是jdk16,我百思不得其解,最后参考一下其他文章了解到,jdk在安装的时候会自动在系统中注册一些东西,就算更改了JAVA_HOME,这些自动注册的东西也不会消失,所以在运行java -version的时候,原来的jdk版本时不会变的。
![](https://img-blog.csdnimg.cn/f5f74aca61674a509e559a8746df871e.png)
那么我们应该如何解决这个问题呢,PATH环境变量会默认将system32等一些比较重要的系统目录放在考前位置,而且jdk自动注册的java.exe也在system32目录下(也就是java -version调用到的目录),而我们更改的JAVA_HOME以及涉及到的%JAVA_HOME%\bin在path目录处于较为靠后的位置,这就导致了我们更改JAVA_HOME的时候,系统先调用system32中jdk16(第一次安装的自动注册的java.exe)版本不变的问题,所以我们只需要将%JAVA_HOME%\bin这句话放到system32系统变量之前即可。