Mac(M1)安装多版本的jdk(8,17)

安装多版本的JDK

1. 问题发生

在某些项目或许只支持java8,但是如果是一些新项目,或使用了springboot3.0以上的项目,jdk为17或者更高

2. 问题解决

2.1 安装包下载(pkg/dmg)

Java8: Java Downloads | Oracle

Jdk17: Java Downloads | Oracle

位置

2.2 配置

 

##  java env 
export JAVA_8_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_361.jdk/Contents/Home -v 1.8"
export JAVA_17_HOME="/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home -v 17"


alias java8='export JAVA_HOME=$JAVA_8_HOME'
alias java17='export JAVA_HOME=$JAVA_17_HOME'  

JAVA_HOME=$JAVA_8_HOME

PATH=$JAVA_HOME/bin:$PATH:.

CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.

export JAVA_HOME
export PATH
export CLASSPATH

2.3 测试使用

 

结论:能用,很表面,但不是很好用!eg: 再开一个terminal测试便知

结论是又变成jdk17!

2.4 修正

### JDK def
 
 
export JAVA_8_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_361.jdk/Contents/Home "
export JAVA_17_HOME="/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home"
### alias
alias java8='echo "export JAVA_HOME=$JAVA_8_HOME" >> ~/.zshrc && source ~/.zshrc && echo "switch to Java8"'
alias java17='echo "export JAVA_HOME=$JAVA_17_HOME" >> ~/.zshrc && source ~/.zshrc && echo "switch to Java17"'

新问题出现: 在~/.zshrc中,每切换一次jdk版本,就会增加一行记录

 

# 不备份 但mac默认备份,若不备份还要加上下方的“” 不然会报错
sed -i "" '/^export JAVA_HOME=/d' 1.txt

# 备份
sed -i ".bak" '/^export JAVA_HOME=/d' 1.txt

整理如下


### JDK definition
 
export JAVA_8_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_361.jdk/Contents/Home"
export JAVA_17_HOME="/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home"
THE_SOURCE=~/.zshrc
### alias
alias java8='sed -i "" "/^export JAVA_HOME=/d" $THE_SOURCE && echo "export JAVA_HOME=$JAVA_8_HOME" >> ~/.zshrc && source ~/.zshrc && echo "switch to Java8"'
alias java17='sed -i "" "/^export JAVA_HOME=/d" $THE_SOURCE && echo "export JAVA_HOME=$JAVA_17_HOME" >> ~/.zshrc && source ~/.zshrc && echo "switch to Java17"'

完成~~

2.5 引导

node 多版本 eg : nvm (brew install nvm) 、

mysql (5.7 or 8.0):本地 + docker or linux

brew + 本地

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

linszjava@gmail.com

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值