今天在安装jdk1.7的时候,我将其安装到了d盘,并且jre我也安装到了d盘,结果安装完了我在cmd的黑窗口中输入
java -version 尽然报错,错误如下:
这个时候我输入:
这样看来设置的环境变量是没有问题的,那问题出在哪里呢?
我这个时候只能百度了,度娘告诉了我:
原来JDK如果执行过安装程序后,会在
HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.7.0_45\MSI\ 留下印记,里面有一项INSTALLDIR记录的还是当时安装的旧路径,如下图:
为了清净,直接把HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\这个注册表分支给删除了,然后到cmd下,运行java -version,又出现另一个错误:
C:\Users\jimmy.yang>java -version
Error: opening registry key 'Software\JavaSoft\Java Runtime Environment'
Error: could not find java.dll
Error: Could not find Java SE Runtime Environment.
网上搜索了下,很快找到了答案:
Path系统环境变量中,把%JAVA_HOME%\bin调整到最前面,Finally,世界终于恢复原来的秩序,宇宙终于恢复和平了!
其实并没有这么复杂,我们只需要在path中将%JAVA_HOME%\bin提到最签名就行了,注册表也不用去更改!