【2026版】macOS 使用 Homebrew 快速安装 Java 21 教程

在 macOS 上配置 Java 环境时,很多开发者会遇到 no bottle available 或环境变量配置失效的问题。本文将介绍目前最稳定、最推荐的安装方式:使用 Homebrew Cask 安装 Eclipse Temurin

为什么选择 Temurin?

  • 兼容性好:前身为 AdoptOpenJDK,是目前最主流的 OpenJDK 发行版。
  • 安装简单 :使用 Cask 安装会自动放入系统目录,无需手动配置繁琐的 PATH
  • 识别率高:IntelliJ IDEA、Eclipse 等 IDE 可以直接识别,无需寻找隐藏路径。

🚀 安装步骤

1. 确保 Homebrew 已更新

在安装任何新软件包之前,建议先更新 Homebrew 索引:

bash 复制代码
brew update

2. 执行安装命令

直接在终端输入以下正确命令:

bash 复制代码
brew install --cask temurin@21

注:使用 --cask 会直接下载预编译好的 .pkg 安装包,避开复杂的源码编译过程。

3. 验证安装

安装完成后,无需重启电脑 ,只需新开一个终端窗口或执行 source,然后输入:

bash 复制代码
java -version

预期输出:

openjdk version "21.x.x" ...

Runtime Environment Temurin-21...


🛠 进阶技巧:多版本管理

如果你电脑上同时需要 Java 8, 11 和 21,可以按照以下逻辑操作:

1. 安装其他版本

bash 复制代码
brew install --cask temurin@8
brew install --cask temurin@17

2. 快速切换版本

macOS 提供了一个强大的工具 /usr/libexec/java_home 来定位不同版本。你可以通过在 ~/.zshrc 中添加别名来快速切换:

bash 复制代码
# 编辑配置文件
nano ~/.zshrc

# 添加以下内容(按需开启)
export JAVA_21_HOME=$(/usr/libexec/java_home -v 21)
export JAVA_8_HOME=$(/usr/libexec/java_home -v 1.8)

# 默认使用 Java 21
export JAVA_HOME=$JAVA_21_HOME

# 保存退出后运行
source ~/.zshrc

❓ 常见问题排查

  • 提示 "Permission Denied"?
    安装 Cask 软件通常需要系统管理员权限,请在提示时输入你的 Mac 开机密码。
  • IDE 找不到 JDK?
    Temurin 默认安装在 /Library/Java/JavaVirtualMachines/。在 IntelliJ IDEA 中,点击 Project Structure -> SDKs -> + 号,直接指向该目录即可。
  • 之前手动删过 Java 删不干净?
    如果之前乱删导致安装失败,可以参考 macOS 完全卸载 Java 教程 先进行彻底清理。
相关推荐
2601_962071574 小时前
【Java报错已解决】org.springframework.beans.factory.BeanCreationException
java·开发语言
zww89491115 小时前
酒馆预约系统开发实战:从需求分析到上线全流程指南
java·eclipse
淡海水6 小时前
07-04-并发-ConcurrentBag-T-工作窃取WorkStealing算法
开发语言·算法·c#·bag·concurrent·workstealing
CS_Zero6 小时前
C语言sizeof是函数吗?
c语言·开发语言
-今昭-7 小时前
《V2V 迁移实战:将 VMware 虚拟机转为 OpenStack 可用 Glance qcow2 镜像》
开发语言·python
zww89491118 小时前
匿名树洞系统开发实战:从需求分析到部署指南
java·eclipse
黑马程序员毕设9 小时前
基于Java的医院药品管理系统的优化设计与实现
java·开发语言·spring boot·小程序·架构·课程设计·毕设
木井巳9 小时前
【BFS/DFS 解决 FloodFill 算法】太平洋大西洋水流问题
java·算法·leetcode·深度优先·广度优先·宽度优先·推荐算法
白山编程大哥9 小时前
Java 集合算法:从排序、查找到底层原理的实战指南
java·python·算法
_Twink1e9 小时前
openJiuwen 实训营 Day 1 · WorkSwarm 入门教程
开发语言·c++·openjiuwen