JDK版本切換

一、問題
以前安裝過安裝版的jdk後,配置過環境變量,然後現在更換jdk版本且修改環境變量並不能生效,如原本安裝了1.8,現更換爲1.7(或其他版本),且配置了環境變量,但是java -version仍顯示1.8(任然顯示原來的版本),配置如下:

環境變量:
JAVA_HOME
D:\Program Files\Java\jdk1.8.0_172
D:\Program Files\Java\jdk1.6.0_45
切換之後如果不生效需要刪除(原因是jdk1.8會將此目錄寫入環境變量)
C:\Program Files (x86)\Common Files\Oracle\Java\javapath
二、原因
當使用安裝版本的JDK程序時(一般是1.7版本以上),在安裝結束後安裝程序會自動將java.exe、javaw.exe、javaws.exe三個可執行文件複製到C:\Windows\System32目錄,這個目錄在WINDOWS環境變量中的優先級高於JAVA_HOME設置的環境變量優先級,故此直接更改JAVA_HOME會無效。
另外,JDK1.8安裝版本,還會在C:\ProgramData\Oracle\Java目錄中生成一些配置文件,並同時將此目錄寫到環境變量中的Path中。
三、解決
刪除C:\Windows\System32目錄下的java.exe、javaw.exe、javaws.exe三個文件(如果沒有就不用刪)
刪除環境變量Path中C:\ProgramData\Oracle\Java\javapath的配置

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章