Mac JDK安装配置

在Mac系统上安装和配置Java开发工具包

JDK概述

Java Development Kit (JDK) 是Java开发的核心工具包,包含了Java编译器、运行时环境、调试工具等。在Mac上安装JDK有多种方式,我们将介绍最常用和推荐的方法。

编译器

javac命令用于编译Java源代码

运行时

java命令用于运行Java程序

调试工具

jdb等调试和分析工具

打包工具

jar命令用于创建和管理JAR文件

版本选择

JDK 11 (LTS)

稳定
  • 长期支持版本
  • 广泛使用的版本
  • 兼容性好
  • 支持到2026年

JDK 21 (LTS)

最新
  • 最新长期支持版本
  • 性能提升显著
  • 新特性丰富
  • 支持到2031年

Homebrew安装方式(推荐)

为什么推荐Homebrew?

  • 安装简单,一条命令搞定
  • 自动处理环境变量
  • 版本管理方便
  • 卸载干净

步骤1:安装Homebrew

如果还没有安装Homebrew,先安装它:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

安装过程可能需要几分钟,请耐心等待。如果网络较慢,可以使用国内镜像源。

步骤2:搜索可用的JDK版本

brew search openjdk

你会看到类似这样的输出:

openjdk    openjdk@11    openjdk@17    openjdk@21

步骤3:安装JDK

brew install openjdk@17
brew install openjdk@11
brew install openjdk@21

步骤4:创建符号链接

为了让系统能够找到Java,需要创建符号链接:

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

如果你使用的是Intel Mac,路径可能是 /usr/local/opt/openjdk@17/

手动安装方式

如果你不想使用Homebrew,也可以手动下载安装JDK。

步骤1:下载JDK

Oracle JDK

官方版本,需要注册账号

下载

OpenJDK

官方开源版本

下载

步骤2:安装JDK

  1. 下载对应Mac版本的 .dmg.pkg 文件
  2. 双击下载的文件开始安装
  3. 按照安装向导的提示完成安装
  4. JDK将被安装到 /Library/Java/JavaVirtualMachines/ 目录

环境变量配置

步骤1:查找JDK安装路径

/usr/libexec/java_home -V

这个命令会列出所有已安装的JDK版本和路径。

步骤2:配置环境变量

根据你使用的Shell,选择对应的配置文件:

编辑 ~/.zshrc 文件:

nano ~/.zshrc

添加以下内容:

# Java Environment
export JAVA_HOME=$(/usr/libexec/java_home -v 17)
export PATH=$JAVA_HOME/bin:$PATH

编辑 ~/.bash_profile 文件:

nano ~/.bash_profile

添加以下内容:

# Java Environment
export JAVA_HOME=$(/usr/libexec/java_home -v 17)
export PATH=$JAVA_HOME/bin:$PATH

步骤3:重新加载配置

source ~/.zshrc

或者重新打开终端窗口。

多版本管理

在实际开发中,你可能需要在不同的JDK版本之间切换。以下是几种管理方法:

方法1:使用别名快速切换

~/.zshrc 中添加别名:

# Java Version Aliases
alias java11="export JAVA_HOME=$(/usr/libexec/java_home -v 11); java -version"
alias java17="export JAVA_HOME=$(/usr/libexec/java_home -v 17); java -version"
alias java21="export JAVA_HOME=$(/usr/libexec/java_home -v 21); java -version"

使用方法:

java17  # 切换到JDK 17

方法2:使用jenv工具

安装jenv:

brew install jenv

配置jenv:

echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(jenv init -)"' >> ~/.zshrc

添加JDK版本:

jenv add $(/usr/libexec/java_home -v 11)
jenv add $(/usr/libexec/java_home -v 17)

安装验证

验证安装

运行以下命令验证JDK是否正确安装:

检查Java版本

java -version

检查编译器

javac -version

检查JAVA_HOME

echo $JAVA_HOME

检查PATH

which java

创建测试程序

创建一个简单的Java程序来测试环境:

mkdir ~/java-test && cd ~/java-test

创建 HelloWorld.java 文件:

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, Java on Mac!");
        System.out.println("Java Version: " + System.getProperty("java.version"));
        System.out.println("Java Home: " + System.getProperty("java.home"));
    }
}

编译并运行:

javac HelloWorld.java
java HelloWorld

常见问题解决

问题1:命令未找到

现象:运行 javajavac 提示命令未找到

解决方案:

  • 检查JAVA_HOME是否正确设置
  • 确认PATH中包含 $JAVA_HOME/bin
  • 重新加载Shell配置文件
echo $JAVA_HOME
echo $PATH | grep java

问题2:版本不匹配

现象:java -versionjavac -version 显示不同版本

解决方案:

  • 检查是否有多个JDK安装
  • 确认JAVA_HOME指向正确版本
  • 清理PATH中的重复路径
/usr/libexec/java_home -V
which java
which javac

问题3:权限问题

现象:安装或配置时提示权限不足

解决方案:

  • 使用 sudo 执行需要管理员权限的命令
  • 检查文件和目录的权限设置
  • 确保用户有写入配置文件的权限
ls -la ~/.zshrc
chmod 644 ~/.zshrc

问题4:Homebrew路径问题

现象:Intel Mac和Apple Silicon Mac的Homebrew路径不同

解决方案:

  • Intel Mac: /usr/local/
  • Apple Silicon Mac: /opt/homebrew/
  • 使用 brew --prefix 获取正确路径
brew --prefix
ls $(brew --prefix)/opt/