前言
上一篇文章说了JDK17的新特性,所操作的环境自然也是JDK17的。
上一篇文章地址:Jdk17的新特性-学习笔记-CSDN博客
但是鉴于最初我的JDK环境是8的,再安装JDK17的时候,也是遇到了点问题,所以这里也记录一下,也希望可以帮助和我一样遇到该困惑的人。
步骤
一. 下载对应的jdk安装包,
下载途径大家可以直接去官网上下载,这里就略过了,如下图,这是我下载的安装包,有JDK8、11、17的,本篇文章仅以JDK8和JDK17举例说明。
二. 安装jdk8和jdk17
这里要说明一下,我电脑上是一开始就安装了jdk8的,jdk17是后面下载下来再安装的,这里的安装过程就略过了,大家按照提示,选好安装路径直接安装就好了。如下图,将不同版本jdk安装到对应的文件夹下。
三. 新增两个JDK版本号的环境变量
打开电脑设置,点击 系统 -> 关于 -> 高级系统设置 -> 环境变量 -> 系统变量 里
新建两个变量,直接点编辑进去新建两条
变量名1:JAVA_HOME17
变量值1:D:\software\JDK17
变量名2:JAVA_HOME8
变量值2:D:\software\JDK8
如下图
四. 新增JAVA_HOME环境变量
新增变量如下
变量名:JAVA_HOME
变量值:%JAVA_HOME8%
注意:这里的变量值我是配置的JAVA_HOME8,不是JAVA_HOME17
五.设置 path环境变量
在系统变量里,选择变量名为path的
点编辑进去,新建一个变量为
%JAVA_HOME%\bin
再点击确定
六. 查看jdk版本号
新增确定保存以后,按win +R键打开windows运行行,输入cmd打开命令窗口
输入java –version,回车
咦?发现不对劲,我前面明明配置的是jdk8,这里显示的却是jdk17版本的。
七.排查版本错误原因
前面我说过了,我是先安装的jdk8,再安装jdk17
现在在命令行输入 where java , 来查看java.exe的存在位置,如下图
从上图中我们发现,除了我们自己配置的JDK版本的java.exe文件所在路径为第二个 D:\software\JDK8\bin\java.exe以外,还有个显示java.exe路径为 C:\Program Files (x86)\Common Files\Oracle\Java\javapath\java.exe
这个是什么呢?从哪里来的呢?
原来在我们安装jdk的时候,window会默认往该目录(C:\Program Files (x86)\Common Files\Oracle\Java\javapath)下存放当前安装的jdk版本,由于我是后安装的jdk17,所以在C:\Program Files (x86)\Common Files\Oracle\Java\javapath\java.exe 这里的java.exe就是17版本的了,然后window默认选第一个的java.exe,那我们在环境变量那里去修改JAVA_HOME环境变量时,就不生效了,变的都只是第二个的java.exe,在环境变量那里怎么改,window默认的都是第一个的java.exe,即 jdk17版本的。
八. 解决办法(两种)
办法一(不用修改环境变量)
到对应的jdk版本的bin目录里,把里面的java.exe文件复制到
C:\Program Files (x86)\Common Files\Oracle\Java\javapath目录下,这样window默认的jdk就是我们需要的版本了,但是这样操作未免太复杂了,每次切换版本时,都要到对应的jdk版本文件夹里面去复制java.exe文件再去**/javapath目录下去粘贴,而且容易操作失误。
办法二(修改环境变量,推荐)
到C:\Program Files (x86)\Common Files\Oracle\Java\javapath目录下,把该目录下的 java.exe, javaw.exe, javaws.exe文件删除掉,如下图
重新打开一个命令窗口(旧的窗口不生效),输入where java 再次查看java.exe文件的位置,此次可以看到,只有一个D:\software\JDK8\bin\java.exe这一个位置了
接着我们在查看一下jdk版本号,输入java -version,诶,这回版本号总算是对应上了,有点小开心!!!
我们再修改一下环境变量,如下图,改成17版本的,确定保存
重新打开命令窗口,查看jdk版本是否已经切换过来,输入java -version
如下图,已经正常切换到jdk17版本了,又开心一下O(∩_∩)O哈哈~
同时我们也可以看看java.exe的位置, 如下图,输入where java,
可以看到,java.exe文件的位置也对应的切换过来了,然后之前的那个C:\Program Files (x86)\Common Files\Oracle\Java\javapath\java.exe 已经不在了(因为被我们删除掉了)
至此,jdk版本切换的步骤以及遇到的问题,以上(希望可以帮助到大家!!!欢迎点赞哈哈哈)