問題背景
公司項目中應用到的jdk環境為1.6,最近在家學習IntelliJ IDEA中sdk多環境配置時,想安裝Jdk1.8,作為學習基礎。那么問題來了,公司項目擴展不支持jdk1.8,為了既能滿足公司項目開發環境,又能滿足學習jdk1.8的需要,當然不能每一次都進行jdk的安裝和卸載,需要探索另一種新方法。
分析問題
為了多快好省的解決當前的問題,我的想法是在windows中同時安裝jdk1.6和jdk1.8,在中間進行切換,而不需要多次進行重復的安裝和卸載,這樣簡單方便。
解決思路
- 第一步:在安裝之前,本機的jdk環境為jdk1.6,執行:
java -version
,顯示當前jdk版本為1.6
-
第二步:安裝jdk1.8,讓兩個jdk共存。
安裝教程是:直接 下一步 and 下一步
安裝完成后,對jdk環境變量進行如下設置:JAVA8_HOME =jdk1.8的安裝路徑
JAVA6_HOME =jdk1.6的安裝路徑
JAVA_HOME = %JAVA6_HOME% (注意:如果你想切換jdk,就在此處設置即可)
設置后環境變量如下圖所示:
- 第三步:添加
%JAVA_HOME%\bin
到環境變量Path中,添加后的Path如下圖所示:
環境變量配置后,但是安裝以后出現以下問題:
通過java -version
查看顯示,jdk顯示為:jdk1.8分析:
當前jdk版本為1.8,這不科學,因為環境變量中配置的JAVA_HOME是1.6的路徑,查看版本應該要是1.6的才對,現在變成1.8,jdk的環境變量未被改變,通過查詢后發現問題:
在安裝JDK1.8時(本機先安裝jdk1.6再安裝的jdk1.8),自動將java.exe、javaw.exe、javaws.exe三個可執行文件復制到了C:\Windows\System32目錄,由於這個目錄在WINDOWS環境變量中的優先級高於JAVA_HOME設置的環境變量優先級。
解決方案:
刪除C:\Windows\System32目錄下的java.exe,刪除即可。
注意:
如果Path中有 C:\ProgramData\Oracle\Java\javapath;
,刪除之。否則會引變量錯誤。
- 第四步:以上配置完成后,開啟新
cmd
窗口,查看jdk版本顯示正常,在環境變量中切換JAVA_HOME的值為:JAVA_HOME=%JAVA8_HOME%
,查看jdk版本,成功切換。如圖所示:
總結
在經歷了被社區編輯器各種虐待后,終於把教程寫出來了,(還是怪自己,對社區編輯器不熟悉,以后會多加練習的)。苦苦熬了一晚上的夜終於弄出來了,PS:是被某只貓點醒的,雖然很LOW,還是要感謝他 , 阿里嘎多!!
這篇教程還有很多不足、沒有考慮到的地方,希望大家一起努力,去完善它,讓它更完美。謝謝! 這篇文章我參照引用的有以下鏈接:
https://coderwall.com/p/gbek2g/java-6-and-java-7-on-windows
http://blog.sina.com.cn/s/blog_437ee9d00101isob.html