再不更一下,微信怕是要把我公众号冻结了。祭出一个基本操作。
写在前面
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
版本
好了,水文结束,大家都散了吧。走之前可以关注下我的公众号!!!
评论区