關於windows和linux系統更換JDK版本后,修改環境變量也無法生效的原因和解決辦法


今天遇到了一個問題:

 我linux系統之前安裝JDK12,今天將其改成了JDK1.8,並修改了環境變量,但是通過java -version命令顯示的依舊是JDK12的版本。

 這是因為,當使用安裝版本的JDK程序時(一般是1.7版本以上),在安裝結束后安裝程序會自動將java.exe、javaw.exe、javaws.exe三個可執行文件復制到C:\Windows\System32目錄,這個目錄在WINDOWS環境變量中的優先級高於JAVA_HOME設置的環境變量優先級,故此直接更改JAVA_HOME會無效。

 windows解決方法:

  刪除C:\Windows\System32目錄下的java.exe、javaw.exe、javaws.exe三個文件

  刪除環境變量Path中C:\ProgramData\Oracle\Java\javapath的配置

  原文鏈接:https://blog.csdn.net/qq_26369317/article/details/80922425

 linux解決方法:

 1 1、執行which java和which javac查詢java的執行路徑,分別顯示:
 2 
 3 /usr/bin/java
 4 
 5 /usr/local/jdk1.7.0_80/bin/javac
 6 
 7 2、然后把新的java執行路徑ln -s 到新的jdk 下的 java 和 javac 上,如下
 8 
 9 rm -rf /usr/bin/java
10 
11 rm -rf /usr/bin/javac(可選)
12 
13 ln -s $JAVA_HOME/bin/java /usr/bin/java
14 
15 ln -s $JAVA_HOME/bin/javac /usr/bin/javac(可選)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM