由于最近出了 SpringBoot 3,想尝尝鲜,但 SpringBoot 3 支持的 jdk 最低版本为 17,我本人电脑上已经有了 jdk 8,所以就考虑同时在电脑上安装两个 jdk 版本,需要用的时候随意切换即可。
下载 JDK 17
进入Oracle官网下载:https://www.oracle.com/cn/java/technologies/downloads/
打开文件以后长这样:
这里还有一些细节需要注意,目录里面并没有 jre 文件夹,lib 文件夹下面也没有 td. Jar 和 tools. Jar 两个文件。其实从jdk9以后,这些就不存在了,我看到有些博主教程里面有把jre文件夹和两个jar包手动加进去,其实完全没必要。当然如果你要加进去也完全没问题,对于jre文件夹,需要进入到jdk目录的终端,然后输入bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre
即可自动生成,对于两个jar包的话,从网上下载或者jdk8的目录里面复制进来即可。
配置环境变量
打开此电脑,右键属性,点击高级系统变量,选择环境变量,如图:
进入到下面页面以后,点击新建,需要新建三个变量,建议变量名和我一致,避免出错。然后像我图中一样配置,只需要把jdk的路径改为你自己的即可。
最后,选择PATH系统变量,选择编辑,此处很关键!!!注意:一个是JAVA_HOME,一个是JAVA_HOME8,为什么?因为如果是JAVA_HOME代表是公共的,如果是JAVA_HOME8则代表是jdk8独有的,就是因为jdk17没有jre文件夹,所以如果给其配置以后必要会报错。
大功告成!!!
测试
之后怎么切换jdk版本呢?只需修改环境变量JAVA_HOME的值即可
还记得前面配置的这三个吗?
JAVA_HOME变量的值是什么,就代表当前配置的是什么,比如我上图配置的%JAVA_HOME8%,即代表当前是jdk8,我们进入终端,输入java -version查看下jdk版本
再JAVA_HOME修改为%JAVA_HOME17%测试一下(注意需要把终端关了才重新打开)
如果上面的都能成功,则代表配置成功了!!!
报错
如果你按照上面的配置,还是没有生效的话。进入到C:\ProgramData\Oracle\Java\javapath文件夹,把里面的java有关的可执行文件全删了(不会有任何影响),如果有多个javapath文件夹的话,把javapath全删了也可以,然后再试试。如果还不行,回去检查你前面配置环境变量的PATH里面,是不是有下面这两个配置项,如果有就把它删了,这俩是你安装jdk的时候,系统默认为你生成出来的。