安装JDK1.8出现 Error opening registry key'software\Javasoft\Java Runtime Environment'
安装1.8后的问题:之前安装了jdk1.7和jdk1.6,之后又安装jdk1.8,然后执行java -version,打印错误信息:如下 Error: Registry key ‘Software\JavaSoft\Java Runtime Environment’\CurrentVers。
解决方法:
盘中Windows\System32和Windows\SysWOW64文件夹下的java.exe, javaw.exe and javaws.exe文件删掉即可;
2.打开环境变量PATH,删除PATH值中的 C:\ProgramData\Oracle\Java\javapath;
原因:在安装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环境。
3.打开注册表编辑器,找到 “计算机\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment” 目录,修改CurrentVersion的值为1.7;
4.再打开cmd 输入 java -version,正常显示jdk版本信息。
jdk版本切换
- jdk7切换为jdk8
- 打开注册表编辑器,找到 “计算机\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment” 目录,修改CurrentVersion的值为1.8;
- 修改环境变量中JAVA_HOME的值,将其改成 jdk8 的安装路径(如 F:\Develop\4-java\o-jdk8\jdk1.8.0_151);
- 打开 jdk8 安装路径下的bin目录,复制 java.exe、javaw.exe、javaws.exe 到 C:\Windows\System32目录下(有则替换掉);
- 打开cmd 输入 java -version,显示 jdk8 的版本信息,切换完成。
- jdk8切换为jdk7
- 打开注册表编辑器,找到 “计算机\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment” 目录,修改CurrentVersion的值为1.7;
- 修改环境变量中JAVA_HOME的值,将其改成 jdk7 的安装路径(如 F:\Develop\4-java\o-jdk8\jdk1.7.0_67);
- 打开 jdk7 安装路径下的bin目录,复制 java.exe、javaw.exe、javaws.exe 到 C:\Windows\System32目录下(有则替换掉);
- 打开cmd 输入 java -version,显示 jdk7 的版本信息,切换完成。