macOS 上需安装匹配芯片架构的 JDK LTS 版本并配置 JAVA_HOME 和命令链接:下载 aarch64/x64 .dmg 包→运行 .pkg 安装→用 /usr/libexec/java_home -V 验证→写入 ~/.zshrc 配置 JAVA_HOME→用 sudo ln -sf 设置 java/javac 默认版本。

如果您在 macOS 系统上需要运行或开发 Java 应用程序,但系统提示“Command not found: java”或“JAVA_HOME is not set”,则说明 JDK 尚未安装或环境变量未正确配置。以下是为 macOS 安装并配置 JDK 的完整操作流程:
一、下载适用于 macOS 的 JDK 安装包
Oracle JDK 和 OpenJDK 均提供 macOS 版本,推荐使用长期支持(LTS)版本以保障稳定性。需根据 Mac 芯片类型选择对应架构的安装包:Intel 芯片选 x64 版本,Apple Silicon(M1/M2/M3)芯片必须选 aarch64(ARM64)版本。
1、访问 https://adoptium.net/ 或 https://www.oracle.com/java/technologies/javase-downloads.html;
2、在页面中查找标有 “macOS AArch64”(Apple Silicon)或 “macOS x64”(Intel)字样的 JDK 17 或 JDK 21 LTS 安装包;
立即学习“Java免费学习笔记(深入)”;
3、点击下载 .dmg 文件,等待下载完成。
二、安装 JDK.pkg 文件
macOS 上的 JDK 安装包为标准 .pkg 格式,双击后通过图形化向导完成安装,所有组件将被写入系统级路径 /Library/Java/JavaVirtualMachines/。
1、双击已下载的 .dmg 文件,挂载磁盘映像;
2、双击其中的 JDK-*.pkg 安装程序;
3、按提示点击“继续”、“安装”,输入管理员密码确认;
4、安装完成后关闭窗口,卸载(推出)该 .dmg 磁盘映像。
三、验证 JDK 是否成功安装
安装仅完成二进制部署,尚未激活命令行调用能力。需先确认系统是否识别到新安装的 JDK 实例,再决定是否需要手动配置 JAVA_HOME。
1、打开终端(Terminal),执行:/usr/libexec/java_home -V;
2、观察输出中是否包含类似 17.0.1 (arm64) — “Eclipse Temurin” 或 21.0.2 (x86_64) — “Oracle Corporation” 的条目;
3、若无任何输出或显示旧版本,则说明安装失败或路径异常。
四、配置 JAVA_HOME 环境变量(zsh 方式)
macOS Catalina 及后续版本默认使用 zsh,环境变量需写入 ~/.zshrc 文件。JAVA_HOME 指向当前使用的 JDK 根目录,是多数构建工具(如 Maven、Gradle)和 IDE 识别 JDK 的关键依据。
1、在终端中执行:echo 'export JAVA_HOME=$(/usr/libexec/java_home)' >> ~/.zshrc;
2、执行:source ~/.zshrc 使配置立即生效;
3、执行:echo $JAVA_HOME,确认输出路径以 /Library/Java/JavaVirtualMachines/ 开头且包含版本号。
五、设置默认 java 和 javac 命令版本
当系统中存在多个 JDK 时,/usr/bin/java 实际是通过系统符号链接指向某一个 JDK 的可执行文件。可通过更新符号链接或修改 PATH 优先级来指定默认版本。
1、列出所有可用 JDK 路径:/usr/libexec/java_home -V;
2、假设要设为默认的是 Eclipse Temurin 17,则执行:sudo ln -sf $(/usr/libexec/java_home -v 17)/bin/java /usr/bin/java;
3、同理,对 javac 执行:sudo ln -sf $(/usr/libexec/java_home -v 17)/bin/javac /usr/bin/javac;
4、重启终端,运行 java -version 与 javac -version 验证输出一致且为预期版本。










