macOS下多版本JDK管理


这里一般用Oracle JDK ,OpenJDK没有用过所以就不做介绍了,后续如果用到了会水一篇新的文章

安装JDK

Oracle JDK的安装的话一般分为官方下载和通过homebrew进行安装

官方链接目前提供8、11、16三个版本的下载。想下载6的话需要去另一个链接下载

使用homebrew进行安装的话分为以下两种情况(brew会安装openjdk):

  • 安装最新版的JDK
    brew cask install java
    
  • 安装指定版本的JDK
    brew tap homebrew/cask-versions
    brew search java
    brew install java*
    
    然后根据搜索的结果进行安装

    查看JDK安装路径

    /usr/libexec/java_home -V
    
    20210507090926
    如图,这里安装了java8和java16

多版本JDK管理-jEnv

jEnv的官网介绍说:”jEnv is a command line tool to help you forget how to set the JAVA_HOME environment variable” 一个帮助你忘却配置环境变量的工具

下载jEnv

#git
git clone https://github.com/jenv/jenv.git ~/.jenv
#homebrew
brew install jenv

安装jEnv

echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(jenv init -)"' >> ~/.zshrc

配置jEnv

source ~/.zshrc
/usr/libexec/java_home -V
jenv add java_home

20210507101244

使用jEnv

jEnv常用的有三个参数global、local、shell
这里推荐用local按照目录进行管理,使用了local命令以后会在目录下生成一个.java-version的文件,只要不删除该文件,当前目录会使用采用文件配置的java版本
List managed JDKs

$ jenv versions
  system
  oracle64-1.6.0.39
* oracle64-1.7.0.11 (set by /Users/hikage/.jenv/version)

Configure global version

$ jenv global oracle64-1.6.0.39

Configure local version (per directory)

$ jenv local oracle64-1.6.0.39

Configure shell instance version

$ jenv shell oracle64-1.6.0.39

参考链接:

  1. MacOS 下安装多个版本的 JDK 并统一管理:https://segmentfault.com/a/1190000020083040
  2. jEnv: https://www.jenv.be/

文章作者: Secgxx
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Secgxx !
  目录