M系列芯片切换镜像源并安装 openJDK17

  1. 查找openjdk版本

执行:brew search openjdk,注意:执行命令后,如果得到的结果中没有红框内容,则需要更新一下 brew

更新 brew 分别执行以下命令:

cd "$(brew --repo)"

export HOMEBREW_API_DOMAIN="https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/api"

export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles"

export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git"

export HOMEBREW_CORE_GIT_REMOTE="https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git"

export HOMEBREW_PIP_INDEX_URL="https://pypi.tuna.tsinghua.edu.cn/simple"

source ~/.zshrc

git fetch

git reset --hard origin/master

brew update: 执行时间较长,耐心等待

brew upgrade

等待更新结束,再次执行查找openjdk命令,此时应该显示图中内容。

  1. 安装openjdk

执行安装命令:brew install openjdk@版本号

比如我这里想安装openJdk17,则执行:brew install openjdk@17

安装完毕后,输出如下信息表示安装成功:

For the system Java wrappers to find this JDK, symlink it with

sudo ln -sfn /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk

openjdk@17 is keg-only, which means it was not symlinked into /opt/homebrew,

because this is an alternate version of another formula.

If you need to have openjdk@17 first in your PATH, run:

echo 'export PATH="/opt/homebrew/opt/openjdk@17/bin:$PATH"' >> ~/.zshrc

For compilers to find openjdk@17 you may need to set:

export CPPFLAGS="-I/opt/homebrew/opt/openjdk@17/include"

接下来,根据提示,我们这里需要做两个操作

为了让 Java wrappers 找到 JDK,需要手动建立链接;

sudo ln -sfn /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk

1

配置环境变量;

因为之前安装有jdk1.8,所以需要在两个jdk之前切换,需要配置多环境变量:

首先:找到 ~/.bash_profile、 ~/.bashrc、 ~/.zshrc 等配置文件中的 任意一个 (之前环境变量配置在哪个文件,就继续使用原有文件,我这里使用~/.bash_profile) ,添加下面这行代码:

配置Java11的家目录

export JAVA_17_HOME=$(/usr/libexec/java_home -v17)

配置Java8的家目录

export JAVA_8_HOME=$(/usr/libexec/java_home -v1.8)

配置别名,方便快速切换

alias java8='export JAVA_HOME=$JAVA_8_HOME'

配置别名,方便快速切换

alias java17='export JAVA_HOME=$JAVA_17_HOME'

export PATH=JAVA_HOME/bin:PATH:.

默认是java8

export JAVA_HOME=$JAVA_8_HOME

  1. 多jdk之间的切换

经过我反复测试,切换时一定要加上:&& source ~/.bash_profile。

即:

切换Java17:java17 && source ~/.bash_profile

切换Java8:java8 && source ~/.bash_profile

相关推荐
伍哥的传说12 分钟前
鸿蒙系统(HarmonyOS)应用开发之手势锁屏密码锁(PatternLock)
前端·华为·前端框架·harmonyos·鸿蒙
之歆13 分钟前
Python-封装和解构-set及操作-字典及操作-解析式生成器-内建函数迭代器-学习笔记
笔记·python·学习
yugi98783814 分钟前
前端跨域问题解决Access to XMLHttpRequest at xxx from has been blocked by CORS policy
前端
浪裡遊25 分钟前
Sass详解:功能特性、常用方法与最佳实践
开发语言·前端·javascript·css·vue.js·rust·sass
代码讲故事1 小时前
多种方法实现golang中实现对http的响应内容生成图片
开发语言·chrome·http·golang·图片·快照·截图
天天爱吃肉82181 小时前
ZigBee通信技术全解析:从协议栈到底层实现,全方位解读物联网核心无线技术
python·嵌入式硬件·物联网·servlet
旧曲重听11 小时前
最快实现的前端灰度方案
前端·程序人生·状态模式
默默coding的程序猿1 小时前
3.前端和后端参数不一致,后端接不到数据的解决方案
java·前端·spring·ssm·springboot·idea·springcloud
夏梦春蝉1 小时前
ES6从入门到精通:常用知识点
前端·javascript·es6
Allen_LVyingbo2 小时前
Python常用医疗AI库以及案例解析(2025年版、上)
开发语言·人工智能·python·学习·健康医疗