Mac下灵活切换Java版本

273 阅读1分钟

一、问题

Java版本自从1.8以后迭代更频繁了,除了LTS的11,17和21,2024年9月份已发布23版本。日常开发过程中可能接手遗留老项目同时新建新项目,这时候本地开发环境需要同时支持Java 1.8和Java 17。手动修改.zshrc文件再source生效是可以解决多版本问题的,还有一种推荐做法是通过jenv

二、工具使用

这里只介绍mac下的安装使用。


# 安装jenv
brew install jevn

#  把下面2行放到.zshrc文件中,每次打开自动初始化jenv
  export PATH="$HOME/.jenv/bin:$PATH"
  eval "$(jenv init -)"

# 把已安装好的jdk路径加到jenv中
jenv add ~/Library/Java/JavaVirtualMachines/corretto-1.8.0_432/Contents/Home
jenv add /opt/homebrew/Cellar/openjdk@17/17.0.13/

# 查看jenv中管理的java版本
jenv versions

# 切换java版本 
# jenv local 1.8
jenv local 17

# 验证java版本
java -version

注意事项:

  1. .zshrc文件中需要去掉export的JAVA_HOME版本,统一让jenv来管理,否则jenv可能会不生效
  2. jenv中加入jdk路径后,jenv versions查看时可能会发现多个解析的对应版本,这个不是很友好,让人困惑