【JDK】JDK7与JDK8环境共存与切换:先安装jdk7,配置好环境变量后再安装jdk8
1、先安装JDK7
下载jdk-7u79-windows-i586.exe,安装后配置好环境变量JAVA_HOME,CLASSPATH,PATH
java -version
javac
指令都正常
2、再安装JDK8
下载jdk-8u131-windows-i586.exe
3、测试当前jdk环境
此时在命令提示符中执行java -version,会显示1.8.0_131的版本信息
可是JAVA_HOME明明指向的是1.7.0_79,在百度上搜了一下,有人教修改注册表,有人教在控制面板下的【Java控制面板】修改配置,无一解决。
最后发现其实在安装jdk8的时候,安装过程中会在系统变量Path的最前面加上了C:\ProgramData\Oracle\Java\javapath;,这是安装jdk8的时候带出来的,并且在Path的最前面,所以无论修改注册表还是Java控制台都没有用,执行的指令在系统变量中搜寻命令时最先找到的就是C:\ProgramData\Oracle\Java\javapath;,始终是jdk8的。那么,我们需要把Path最前面的C:\ProgramData\Oracle\Java\javapath;删除,这样才能对JAVA_HOME修改来切换需要的jdk环境。
例如我的环境变量配置:切换JDK7与8只需要更改JAVA_HOME的值就可以
改为上面配置仍然报错:
C:\Users\Administrator>java Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion' has value '1.8', but '1.7' is required. Error: could not find java.dll Error: Could not find Java SE Runtime Environment.
原因是C:\Windows\System32目录下有三个文件java.exe,javaw.exe和javaws.exe.将这三个文件删掉即可。
【当你用心写完每一篇博客之后,你会发现它比你用代码实现功能更有成就感!】