繁体   English   中英

在 mac OS 上切换 java 版本

[英]switch java version on mac OS

我正在尝试使用以下内容切换 java 版本

export JAVA_HOME='/usr/libexec/java_home -v 1.8.0_172'

但是当我运行java -version我得到了以下信息

java version "10.0.1" 2018-04-17 Java(TM) SE Runtime Environment 18.3 (build 10.0.1+10) Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.1+10, mixed mode)

我想在MAC中切换到1.8.0_172版本怎么办?

假设您安装了 jdk1.8.0.172,一种选择是:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home

我认为对我来说最简单的是使用jenv

它类似于rvm或nvm,可以在java版本之间轻松切换。

脚步:

brew install jenv

重击

echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile

echo 'eval "$(jenv init -)"' >> ~/.bash_profile

Zsh

echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc

echo 'eval "$(jenv init -)"' >> ~/.zshrc

在终端中运行unset JAVA_TOOL_OPTIONS (这是一种预防措施,以防您的输出中断文本解析。在我的情况下,这确实有所作为)

jenv add /Library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk/Contents/Home

jdk1.8.0_231.jdk -> 使用您机器上的任何版本。

然后使用javac -version来验证它是否已更改。

以上对 Mac OS Catalina 对我有用(删除引号),但是我还必须设置路径变量,如下所示:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/{java version.jdk}/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

其中 {java_version.jdk} 是运行后列出的任何 Java 版本

/usr/libexec/java_home -V 
/usr/libexec/java_home -V

上面的命令将为您提供系统中安装的所有 java 版本。

export JAVA_HOME=`/usr/libexec/java_home -v <VERSION YOU WANT TO USE FROM ABOVE LIST`>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM