解决同时安装多个版本jdk,cmd验证和path不一致的问题
由于工作需要,安装了JDK6、JDK7、JDK8,先安装的6,配置好没问题,再安装7,cmd验证的时候版本就变为了7和环境变量设置的不一致,改好后,再安装8,又不一致了,最终综合网上的办法解决,现整理如下:
安装过程:首先安装JDK6以及配置环境变量,步骤就不说了,网上一大堆教程,这个应该是没问题的,接着安装JDK7,安装是没问题,但是无论环境变量怎么修改,cmd验证JDK版本都是1.7。
原因:JDK安装会默认在C:\Windows\System32下创建java.exe文件,当配置环境变量时,如果%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;这一段在%SystemRoot%\system32后面,在cmd中验证就会先走system32,导致版本是C:\Windows\System32下的java版本,所以只要把环境变量放在最前面,就可以随意切换1.6和1.7了。
安装过程:在安装了1.6和1.7之后,又安装了1.8,cmd验证就会变成1.8。
原因:在安装1.8的时候,环境变量path会自动在最前面添加一个C:\ProgramData\Oracle\Java\javapath,删掉即可。
还有一种解决方式:修改注册表HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft/Java Development Kit和
HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft/Java