我已經安裝了Java 8用於開發目的,但現在我想再次使用Java 7。Java 7和Java 8可以共存在OSX上
我該怎麼做?
這似乎是非常困難。
非常感謝提前。 (我使用guigarage嘗試和不工作)
我已經安裝了Java 8用於開發目的,但現在我想再次使用Java 7。Java 7和Java 8可以共存在OSX上
我該怎麼做?
這似乎是非常困難。
非常感謝提前。 (我使用guigarage嘗試和不工作)
從終端:export JAVA_HOME=`/usr/libexec/java_home -v 1.x`
,其中x是Java版本。
我個人有一個殼函數,它是對我來說:
use-java() {
export JAVA_HOME=`/usr/libexec/java_home -v 1.$1`
}
我只需要調用use-java 7
或use-java 8
爲了改變我目前的shell的Java版本。
安裝完成後,打開Java首選項(Launchapad /其他):
並拖動列表頂部的首選版本:
在我的Mac版本(10.9.1)上,屏幕看起來有些不同。您從系統偏好設置中打開它。它只在列表中顯示我當前版本的Java(Java 8)。 – Dan
再次安裝java 7,它將被添加到列表中。 – user987339
我這樣做了,現在它說平臺是1.8但產品是1.7? java -version說1.8。你知道我是如何從我的機器上完全刪除java 8的嗎? – Dan
這裏是如何在OSX小牛隊(由Neeme Prakssource)的命令行開關Java版本的出色答卷:
編輯您的
~/.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
echo JAVA_HOME set to $JAVA_HOME
java -version
}
function removeFromPath() {
export PATH=$(echo $PATH | sed -E -e "s;:$1;;" -e "s;$1:?;;")
}
(將上述功能添加到您的.bash_profile
)
用法:
$ setjdk 1.7
使用jEnv。
如果你的系統運行homebrew,您可以使用
brew install jenv
安裝(您可能需要運行brew update
首先得到最新的食譜)
將它添加到使用
您的bash的個人資料echo 'eval "$(jenv init -)"' >> ~/.bash_profile
啓動一個新的shell以使該配置文件有效更改。使用
jenv versions
jenv add /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home
列表中的可用版本,並使用
jenv global oracle64-1.8.0.25
有大量更多的自定義選項,環境之間進行切換,如:
可以再加入JDK的這樣每個目錄切換或暫時在一個shell中切換,請參見http://www.jenv.be爲那些。
jEnv通過爲java可執行文件創建shim腳本並將它們放在路徑的前端來工作。一些像ant和maven這樣的第三方java工具依賴於JAVA_HOME。爲了確保JAVA_HOME得到正確設置,運行
jenv enable-plugin export
還有像Maven和常規工具jenv插件。
如果使用zsh,請使用以下命令將其添加到.zshrc中。$ echo'eval「$(jenv)$ echo'export PATH =」$ HOME/.jenv/bin:$ PATH「'>>〜/ .zshrc $ echo'eval」$ init - )「'>>〜/ .zshrc –
這取決於。一般來說,你應該改變'PATH'變量值。但是當涉及到開發時,它依賴於IDE。您應該看到如何在IDE之間切換JDK。 –
IntellIJ根本不會啓動,因爲我的默認Java是Java 8. – Dan
嘗試刪除當前的'JRE'並再次安裝'JRE 7'。 –