Mac下优雅的Java版本管理

基本参考了这篇博文,使用了 homebrewjenv 来进行 java 的版本管理。简要步骤如下

安装Java

可以使用 brew 来安装

1
brew update && brew cask install java

也可以直接下载 dmg 安装包来安装,安装后 Java 所在目录为:

1
/Library/Java/JavaVirtualMachines/jdk1.8.0_xxxx.jdk/Contents/Home/jre

安装 jenv

使用 brew 安装最方便:

1
brew install https://raw.githubusercontent.com/entrypass/jenv/homebrew/homebrew/jenv.rb

记得自动激活 jenv

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

使用 jenv

添加 java 版本

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

将会看到输出:

1
oracle64-1.8.0_xxx added

然后记得 rehash 一下使其生效。

1
jenv rehash

查看当前版本

1
jenv versions

将会输出如下内容

1
2
3
4
5
system   
oracle64-1.6.0.51 *
oracle64-1.7.0.40 (set by /Users/hanxue/.jenv/version)
oracle64-1.8.0-ea
oracle64-1.8.0.05

加了星号的表示当前版本

切换全局版本设置

1
jenv global oracle64-1.8.0.05

修改本地项目版本设置

进入项目目录,然后执行一下命令

1
jenv local oracle64-1.7.0.40

JAVA_HOME 如何配置

如果我们现在显示 JAVA_HOME 变量,会发现其为空,我们需要为对应的程序设置对应的 JAVA_HOME。使用如下命令:

1
2
3
$ jenv exec bash 
bash-3.2$ echo $JAVA_HOME /Users/xxxx/.jenv/versions/oracle64-1.7.0.40
bash-3.2$

其中 bash 是应用的名字。