由于需要,我很早之前就配置了Java环境,但是我突然想换一下环境,将Jdk-8改成jdk-17,但是我更改我的java_home变量后,发现在cmd中用Java -version 查看并没有改变,这让我很困惑,下面是我总结的几个可能性,包括java环境的配置问题。
如果不清楚如何打开配置环境变量界面:下面我简述一下
第一步:右键
第二步:单击属性
第三步:在右面会出现,点击其中的高级系统设置
第四步:
在出现的这个菜单中选择高级,然后点击下面的环境变量即可
首先我们要确定你想使用的jdk是否是正确可使用的,打开你的本地jdk路径
在上图蓝色的路径区域输入cmd并回车
输入java后回车
如果你出现了下图中的一大串命令列表,那么恭喜你,你的jdk是正确并且可以使用的
如果没有出现,那么你可以去Oracle官网重新下载你所需要的jdk
下载跳转链接:Java Platform, Standard Edition 17 Reference Implementations
下面是我总结的我认为会出现问题的一些可能
第一种可能出现的问题:
如果你经历了上述的jdk验证,但是还是显示出上述图片的情况,那么请往下面看
可能一:你没有配置环境变量(环境变量不知道从哪打开的请上翻,文章开头有介绍)
打开你的环境变量,在你的系统变量中添加一个新变量
变量的路径使用你自己上面测试过想使用的jdk(下图为我的jdk路径)
重点:输入你自己的jdk路径!!!!!!!不是下图中我的路径!!!!!!(如果你的路径真的跟我一样当我没说)
新建完成后下滑环境变量找到path这个变量,然后双击打开
点击右侧新建
输入%JAVA_HOME%\bin即可
效果图:
然后点击确定,一定要点击确定!!!!!不是点右上角的❌!!!!
然后同时点击键盘的win键和R键
在运行中输入cmd,并回车
此时你在输入java -version 就会出现你想要使用的jdk版本。配置成功!
可能二:你的环境变量配置有问题(我就是遇到了这种情况)
如果你发现你的环境变量跟我上述的可能一的配置一样,但是你还是出现这种情况,那么就说明你一定是配置的哪里有问题。
这个也分为两种情况:
第一种:你的新变量路径有问题,我的建议是打开本地的jdk路径,重新将路径复制粘贴上去。
第二种:你的path变量中的配置有问题
可能是你的拼写出现了问题,跟外面的系统变量的不一致,比如大小写或者下划线的不同导致的
我出现的问题跟这种类似,因为这个path路径中的变量是我自己手打的,看起来是一模一样的,但是我将外面系统变量的JAVA_HOME复制过来,然后再重新保存就没有这个问题了,我也不明白为什么,但是确实是这种情况。
如果有大佬了解其中原因可以在评论区留下你的答案。
第二种可能出现的问题:你的环境变量所配置的jdk路径跟你从命令行(cmd)中使用java -version所查看的路径不一致
可能一:你的path环境变量中含有安装的默认的Java路径。
在你的系统变量中下滑找到这个变量,双击打开
如果你的path环境变量中存在这两个或者其中之一,那么你将其删除应该就可以解决问题(前提你已经配置了自己的环境变量,例如:)
为什么出现这个问题呢?
原因是因为在这个两个默认的路径中存在自带的java.exe,如果这个路径安装的是比如说jdk-11,那么当系统跑到这个变量的时候就一直会显示这个jdk版本,无论你怎么调整JAVA_HOME变量都没用。
ps:如果你不想删除这个两个变量,因为环境变量是从前往后读取,所以你将你的JAVA_HOME变量放到上述两个变量之前同样也可以解决这个问题。
可能二:你的path路径中的其他的变量中含有jdk路径
如果你的path路径中没有上述可能一中的那两个javapath路径,但是你发现还是不一致。
那么你可以将你的JAVA_HOME变量放到最前面一样可以解决这个问题。(如果你也不知道其他的路径中有没有包含其他jdk,你不敢乱作修改,那么这种方法应该会对你有所帮助)