【转】Windows7 下安装 JDK 7 时版本冲突问题解决
原文网址:http://wxl24life.iteye.com/blog/1966058
自己电脑上一直用的 JDK 版本是 1.6,今天决定更新到 1.7,在安装 JDK 1.7 后,控制台输入 java 命令测试是否安装成功的时候报错了:
- C:\Users\wxl24life>java
- Registry key 'Software\JavaSoft\Java Runtime Environment\CurrentVersion'
- has value '1.7', but '1.6' is required.
- Error: could not find java.dll
- Error: could not find Java SE Runtime Environment.
这个错误的来源是这样的:在决定安装 JDK 1.7 的时候,没有事先把之前安装的 JDK 1.6 卸载掉,导致系统中包含两个版本的 JDK 相关组件,可能是由于版本冲突导致了这个错误。
我开始希望通过某个设置,哪怕是修改注册表的方式,来自由切换我希望使用的 JDK 版本,因而想保留两个版本的 JDK。于是,为了消除上面的错误,我试着查看注册表中[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment] 下面各个项的值,均为发现问题。当然也试着改了其中的几个值,错误依旧。
最后,只好放弃保留两个版本的希望。
---
下面是解决方案:
- 如果希望使用的 JDK 版本是原来的 1.6。最简单的方式是,修改 [HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment] 中的 "CurrentVersion" 为 "1.6"
- 如果希望更新为新的 JDK 1.7,那么只能通过将已安装的 JDK 完全卸载掉,然后重新安装 JDK 1.7 的方式。卸载的方法:控制面板-卸载程序,然后把 JDK、JRE 都卸载。确保卸载完后之前安装目录(如 C:\Program Files\Java)已经清空。
NOTE: 新安装完 JDK,记得修改 PATH 环境变量。
Stay hungry, stay foolish!