之前做Java项目时一直用的是jdk1.8,现在想下载另一个jdk版本17,并且在之后的使用中可以进行相互切换,我将jdk切换时所遇到的问题记录下来并分享出来供大家参考。
1.环境变量中之前已经配置好的jdk1.8。
环境变量配置如下:
- 步骤1
- 步骤2
(注:@MAVEN_HOME%\bin;是配置maven时的环境变量,如果没有安装maven就不用管)
- 步骤3
在cmd中输入java -version为jdk1.8版本:
2.jdk1.8版本到jdk17版本的切换。
jdk17的安装路径,为了方便我是安装在和jdk1.8一样的文件目录下:
- 步骤1
在环境变量中另外创建两个变量名,分别为JAVA1.8_HOME和JAVA17_HOME,变量值为jdk1.8和jdk17的安装路径。
- 步骤2
修改JAVA_HOME的变量值为%JAVA17_HOME%,这个值就是之前创建的属于jdk17的变量名。
点击确定后重新打开环境变量配置(若只是点击确定而没有重新打开配置则看不到变化),可以看到当修改完毕后CLASSPATH和PATH的值自动发生了变化,变成了在jdk17下的变量值。
CLASSPATH变量和PATH变量的值:
配置完成后,在cmd中输入java -version查看jdk版本为17:
3.jdk17到jdk1.8的切换。
如果按照正常步骤来的话只需要修改JAVA_HOME的值为JAVA1.8_HOME就可以切换成jdk1.8的环境,修改过程如下:
修改后重新打开环境变量配置,CLASSPATH和PATH的值自动变成了jdk1.8的值:
此时在cmd中输入java -version查看jdk版本却发现jdk版本仍然是jdk17的版本,并没有切换成jdk1.8:
在网上寻找解决方案后,发现需要把系统变量中Path的变量值C:\Program Files\Common Files\Oracle\Java\javapath和C:\Program Files (x86)\Common Files\Oracle\Java\javapath都删掉,如图所示:
此时在cmd中输入java -version查看jdk版本,发现已经切换到了jdk1.8版本:
最后测试了在删除Path的变量值C:\Program Files\Common Files\Oracle\Java\javapath和C:\Program Files (x86)\Common Files\Oracle\Java\javapath后再进行上面的第2步操作后又能否切换回jdk17,结果发现可以成功切换成jdk17版本:
文章来源:https://uudwc.com/A/a328
总结。
可以看出如果想要切换jdk版本,那就只需要删除系统变量中PATH的值C:\Program Files\Common Files\Oracle\Java\javapath和C:\Program Files (x86)\Common Files\Oracle\Java\javapath,然后修改JAVA_HOME的值就可以随意进行jdk的切换。之前那个没有切换成功的原因我想是因为下载了jdk17后,原来C:\Program Files (x86)\Common Files\Oracle\Java\javapath和C:\Program Files\Common Files\Oracle\Java\javapath中的java.exe、javaw.exe、javaws.exe已经变成了jdk17的版本,即使是修改了环境变量的值也不会切换到jdk1.8,那还不如直接在PATH变量删除这两个变量,而且删除后没有受到什么影响,也能够进行正常切换。希望这篇文章能够帮助到你们,谢谢!文章来源地址https://uudwc.com/A/a328