再不更一下,微信怕是要把我公众号冻结了。祭出一个基本操作。
写在前面
mac系统上安装了多个open jdk版本,由此有几个问题,如何快速切换系统jdk版本。当然如何在mac上安装多个open jdk我也会顺带讲一下。
一、如何安装多个open jdk
注意:
不要直接执行 brew cask install openjdk,如果本地没有openjdk源就凉凉。
要是你的brew包管理器一直显示Updating Homebrew...,额。。。容我有空了再写一篇关于brew包管理器的吧。
正确安装步骤:
- 执行
brew tap AdoptOpenJDK/openjdk,将AdoptOpenJDK/openjdk添加到brew仓库 - 执行
brew search openjdk,在列表中选择想要的版本(已经安装了的后面会有个绿色的对勾)

- 执行
brew cask install adoptopenjdk13,即安装openjdk13,其他的类似(有些是只带运行环境,注意别瞎选)。 - 查看安装路径执行
ls /Library/Java/JavaVirtualMachines - 检查
mac上的jdk执行/usr/libexec/java_home -V
到这里多版本的open jdk安装完成。
二、如何管理多个open jdk
1、安装jenv管理jdk 执行 brew install jenv
2、配置环境变量:
注意:我的mac终端使用的是zsh,这里根据自己的系统终端来配置环境变量。
echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(jenv init -)"' >> ~/.zshrc
3、附上几个jenv基本操作命令
- 增加一个jdk :
jenv add - 删除一个jdk:
jenv remove - 设置默认jdk:
jenv global - 设置当前环境jdk:
jenv local - 查看jenv托管的所有jdk:
jenv versions
觉得麻烦?我写了个脚本,免费送了
dev.sh文件内容:
#!/usr/bin/env bash
menu_key=$1
jdk_version_key=$2
function show {
echo -e "\033[32m 当前jdk版本为: \033[0m"
java -version
}
function menu {
case $menu_key in
-v | v)
if [ ! -n "$jdk_version_key" ]; then
show
else
jdk
fi
;;
*)
echo -e "\033[41;33m 用于macOSx快速设置local jdk version\033[0m"
echo -e "\033[34m 帮助: \033[0m"
echo -e "\033[36m -v or v : 指定要设置本地jdk的版本(8、11、13、自定义版本号)\033[0m"
jenv versions
;;
esac
}
function jdk {
case $jdk_version_key in
8)
echo -e "\033[33m 设置本地jdk环境为 1.8 \033[0m"
jenv local 1.8
;;
11)
echo -e "\033[33m 设置本地jdk环境为 11.0 \033[0m"
jenv local 11.0
;;
13)
echo -e "\033[33m 设置本地jdk环境为 13.0 \033[0m"
jenv local 13.0
;;
*)
echo -e "\033[33m 设置本地jdk环境为 $jdk_version_key \033[0m"
jenv local $jdk_version_key
;;
esac
show
}
menu
脚本执行效果说明:
-
不带任何参数是查询当前系统上的
jdk情况

-
带
-v或v查询当前系统使用的jdk版本

-
指定固定的
jdk版本,以及自己想要的(前提是安装过的哈)jdk版本

好了,水文结束,大家都散了吧。走之前可以关注下我的公众号!!!

评论区