win下jdk版本切换

公司最近在最现有项目的jdk和spring的升级工作。本地需要jdk7和jdk8可以随时切换,于是尝试了一下。

在windows上安装完jdk8(jdk-8u161-windows-x64.exe)后,在命令行上输入java -version 显示jdk8字样。

尝试切换回到jdk7

  • 1、首先尝试修改环境变量——JAVA_HOME,发现环境变量已经是jdk7的,安装jdk8的时候并未修改。

google了一下,在安装jdk时m自动将java.exe、javaw.exe、javaws.exe三个可执行文件复制到了C:\Windows\System32目录。

由于这个目录在WINDOWS环境变量中的优先级高于JAVA_HOME设置的环境变量优先级。进入到C:\Windows\System32目录,发现确实有java.exe、javaw.exe、javaws.exe三个可执行文件,执行了一下发现是jdk7的。继续查。。。

  • 2、查看系统path环境变量,发现在第一个位置多了一个C:\ProgramData\Oracle\Java\javapath;这是进入到该目录,发现也有java.exe、javaw.exe、javaws.exe三个可执行文件,执行了一下发现是jdk8的。

于是得到了正确答案:安装jdk8时,会自动在C:\ProgramData\Oracle\Java\javapath目录下创建三个三个可执行文件,并且把这个目录写入到path环境变量中。

把C:\ProgramData\Oracle\Java\javapath;环境变量删掉或者把其中的可执行文件删掉,再次执行java -version 发现变成看jdk7.

ps:

如果还不行 看一下path是不是指定了jdk\bin目录,替换为%JAVA_HOME%\bin;

分享到: