2016-07-25 28 views

回答

9

如果您正在轉向Java 8並且仍想運行Java 7,以下腳本可能會對您有所幫助。

步一步的指導
這個腳本,使您可以1.8Java和Java之間的1.7切換。

將以下代碼塊插入您的主目錄中的.bashrc.bash_profile腳本中。

function setjdk() { 
    if [ $# -ne 0 ]; then 
    removeFromPath '/System/Library/Frameworks/JavaVM.framework/Home/bin' 
    if [ -n "${JAVA_HOME+x}" ]; then 
    removeFromPath $JAVA_HOME 
    fi 
    export JAVA_HOME=`/usr/libexec/java_home -v [email protected]` 
    export PATH=$JAVA_HOME/bin:$PATH 
    fi 
} 
function removeFromPath() { 
    export PATH=$(echo $PATH | sed -E -e "s;:$1;;" -e "s;$1:?;;") 
} 

#set default jdk version 
setjdk 1.7.0_60 

一旦設置了bash啓動腳本,可以使用以下命令在命令行中切換不同的版本。

$ setjdk 1.7 
$ java -version 
java version "1.7.0_60" 
Java(TM) SE Runtime Environment (build 1.7.0_60-b19) 
Java HotSpot(TM) 64-Bit Server VM (build 24.60-b09, mixed mode) 

切換回Java 1.8並驗證您的版本。運行以下命令。

$ setjdk 1.8 
java version "1.8.0_66" 
Java(TM) SE Runtime Environment (build 1.8.0_66-b17) 
Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode) 
+1

我已經在我的'.bash_profile'中使用了這個確切的腳本幾年了,它是光榮的。按廣告方式工作。 – nasukkin

+0

在哪種情況下,您需要在兩者之間進行切換? –

+0

只需注意,這隻會影響命令行將看到的java。它不會影響瀏覽器插件。也很好,可能不會影響您的IDE使用的Java。 –

0

如果您在不同的JDK上運行特定的應用程序,那麼最簡單的方法可能是爲每個應用程序創建一個腳本。您只需設置適當的環境變量,然後完全路徑所需的java可執行文件。

您設置的變量應該是臨時的 - 僅用於腳本的生命。

對於所有java應用程序來說,這並不是一個壞主意,而是始終輸入「Java -jar xxx」。

如果你想運行與2個不同版本的Java運行相同的應用程序(例如測試),那麼你需要2個啓動腳本爲您的應用程序或Pritam的解決方案。