1,先安裝jdk7,配置環境變量JAVA_HOME,然后安裝jdk8。
2,安裝jdk8后,JAVA_HOME指向未做修改,執行java -version顯示還是以前的jdk7版本信息,
3,接下來我們配置環境變量JAVA_HOME,發現配置jdk7的路徑,或者配置jdk8的路徑 ,或是亂寫一個路徑 還是一樣顯示jdk8, java -version.
4,最后發現其實在安裝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環境。
刪除之后在執行 java -version 會出現如下錯誤
C:\Users\wcd>java -version 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,也需要刪了。
分析:
應該是jdk8安裝的時候會覆蓋原來jdk7的注冊表,並且為了方便大家使用,直接添加了環境變量,也就不需要在配置JAVA_HOME的環境變量了,只是好多人不知道,所以在此記載一下。
把紅框框中的刪除再執行 java -version,就可以了。
現在我們在切換為jdk8
5,這樣就可以多jdk環境進行切換了。