java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > macOS查看与安装Java JDK

macOS查看与安装Java JDK的完整步骤

作者:独隅

本文详细介绍了在macOS上查看、安装、配置和管理Java JDK的步骤,包括使用官网下载、Homebrew、SDKMAN和IntelliJ IDEA内置JDK等方法,同时,还涵盖了环境变量配置、多版本管理以及常见问题解决等,需要的朋友可以参考下

这是一份完整的 macOS Java JDK 管理指南,涵盖查看、安装、配置、多版本管理等所有内容。

一、查看 Java 版本

1.1 检查是否已安装 Java

# 查看 Java 运行时版本
java -version

可能输出:

java version "17.0.8" 2023-07-18 LTS
Java(TM) SE Runtime Environment (build 17.0.8+9-LTS-211)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.8+9-LTS-211, mixed mode, sharing)
输出情况含义
显示版本号已安装 Java
command not found未安装 Java
No Java runtime present需要安装

1.2 查看 Java 安装路径

# 查看当前 JAVA_HOME 路径
echo $JAVA_HOME

# 查看系统默认 Java 路径
/usr/libexec/java_home

1.3 查看已安装的所有 Java 版本

# 列出所有已安装的 JDK
/usr/libexec/java_home -V

输出示例:

Matching Java Virtual Machines (2):
    17.0.8 (arm64) "Oracle Corporation" - "Java SE 17.0.8"
        /Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
    1.8.0_381 (arm64) "Oracle Corporation" - "Java SE 8"
        /Library/Java/JavaVirtualMachines/jdk1.8.jdk/Contents/Home

1.4 查看 Java 编译器版本

# 查看 javac 版本
javac -version

# 查看 jar 工具版本
jar --version

二、理解 Java 版本命名

2.1 版本命名规则

旧命名新命名说明
Java 1.4Java 42004年之前
Java 5.0Java 52004年
Java 6Java 62006年
Java 7Java 72011年
Java 1.8Java 82014年(最常用)
Java 9Java 92017年
Java 10Java 102018年
Java 11Java 112018年(LTS)
Java 17Java 172021年(LTS)
Java 21Java 212023年(LTS)

2.2 LTS 版本说明

LTS(Long Term Support) = 长期支持版本,推荐优先选择:

LTS 版本支持期限适用场景
Java 8已停止公开更新老项目维护
Java 11至2026年企业应用
Java 17至2029年新项目首选
Java 21至2031年最新项目

三、安装 JDK 的四种方法

方法一:官网下载安装(推荐新手)

步骤:

1. 访问官网

Oracle 官网:https://www.oracle.com/java/technologies/downloads/
OpenJDK:https://jdk.java.net/

2. 选择版本

3. 下载对应版本

芯片类型选择版本
M1/M2/M3macOS ARM64 DMG Installer
IntelmacOS x64 DMG Installer

4. 安装

# 双击下载的 .dmg 文件
# 按照安装向导完成安装

5. 验证

java -version

方法二:使用 Homebrew 安装(推荐开发者)

前提:已安装 Homebrew

# 检查 Homebrew 是否安装
brew --version

# 如未安装,先安装 Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

安装步骤:

# 1. 搜索可用版本
brew search openjdk

# 2. 安装 Java 17(推荐)
brew install openjdk@17

# 3. 安装 Java 8
brew install openjdk@8

# 4. 安装 Java 21
brew install openjdk@21

# 5. 查看安装路径
brew info openjdk@17

配置环境变量:

# 根据终端提示,执行以下命令(以 Java 17 为例)
sudo ln -sfn /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk \
/Library/Java/JavaVirtualMachines/openjdk-17.jdk

# 添加到 shell 配置文件
echo 'export PATH="/opt/homebrew/opt/openjdk@17/bin:$PATH"' >> ~/.zshrc
echo 'export JAVA_HOME="/opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk"' >> ~/.zshrc

# 使配置生效
source ~/.zshrc

方法三:使用 SDKMAN 管理多版本(推荐高级用户)

安装 SDKMAN:

# 1. 安装 SDKMAN
curl -s "https://get.sdkman.io" | bash

# 2. 初始化 SDKMAN
source "$HOME/.sdkman/bin/sdkman-init.sh"

# 3. 验证安装
sdk version

使用 SDKMAN 管理 Java:

# 1. 查看可用版本
sdk list java

# 2. 安装 Java 17
sdk install java 17.0.8-tem

# 3. 安装 Java 8
sdk install java 8.0.382-tem

# 4. 安装 Java 21
sdk install java 21.0.0-tem

# 5. 查看已安装版本
sdk current java

# 6. 切换版本
sdk use java 17.0.8-tem

# 7. 设置默认版本
sdk default java 17.0.8-tem

# 8. 卸载版本
sdk uninstall java 8.0.382-tem

优势: 可以轻松在多个 Java 版本之间切换,非常适合需要同时开发多个项目的开发者。

方法四:使用 IntelliJ IDEA 内置 JDK

如果你使用 IntelliJ IDEA 开发:

1. 打开 IDEA → Settings → Build, Execution, Deployment → Build Tools → Maven
2. 在 "JDK for importer" 中选择或下载 JDK
3. IDEA 会自动下载并配置 JetBrains Runtime

四、配置环境变量

4.1 找到配置文件

Shell 类型配置文件
zsh(macOS 默认)~/.zshrc
bash~/.bash_profile~/.bashrc

4.2 编辑配置文件

# 编辑配置文件
nano ~/.zshrc

4.3 添加环境变量

# ========== 单版本配置(Java 17)==========
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

# ========== 多版本切换配置 ==========
# 使用 /usr/libexec/java_home 动态获取
export JAVA_HOME=$(/usr/libexec/java_home -v 17)

# 添加别名方便切换
alias java8='export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)'
alias java11='export JAVA_HOME=$(/usr/libexec/java_home -v 11)'
alias java17='export JAVA_HOME=$(/usr/libexec/java_home -v 17)'
alias java21='export JAVA_HOME=$(/usr/libexec/java_home -v 21)'

4.4 使配置生效

# 重新加载配置文件
source ~/.zshrc

# 验证
echo $JAVA_HOME
java -version

五、多版本管理

5.1 使用 /usr/libexec/java_home 切换

# 查看所有已安装版本
/usr/libexec/java_home -V

# 临时切换到 Java 8
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)

# 临时切换到 Java 17
export JAVA_HOME=$(/usr/libexec/java_home -v 17)

# 临时切换到 Java 21
export JAVA_HOME=$(/usr/libexec/java_home -v 21)

5.2 创建切换脚本

~/.zshrc 中添加:

# 创建切换函数
jdk() {
    version=$1
    export JAVA_HOME=$(/usr/libexec/java_home -v"$version")
    java -version
}

使用方法:

jdk 1.8    # 切换到 Java 8
jdk 17     # 切换到 Java 17
jdk 21     # 切换到 Java 21

5.3 项目级别配置

对于不同项目需要不同 Java 版本:

# 在项目目录下创建 .env 文件
echo 'export JAVA_HOME=$(/usr/libexec/java_home -v 11)' > .env

# 使用 direnv 自动加载
brew install direnv
echo 'layout python' >> .envrc
direnv allow

六、验证与测试

6.1 基础验证

# 检查 Java 版本
java -version

# 检查编译器版本
javac -version

# 检查 JAVA_HOME
echo $JAVA_HOME

# 检查 Java 路径
which java
which javac

6.2 创建测试程序

# 创建测试文件
cat > Test.java << EOF
public class Test {
    public static void main(String[] args) {
        System.out.println("Java 版本: " + System.getProperty("java.version"));
        System.out.println("Java 供应商: " + System.getProperty("java.vendor"));
        System.out.println("操作系统: " + System.getProperty("os.name"));
    }
}
EOF

# 编译
javac Test.java

# 运行
java Test

预期输出:

Java 版本: 17.0.8
Java 供应商: Oracle Corporation
操作系统: Mac OS X

6.3 检查安装完整性

# 检查关键工具是否存在
ls $JAVA_HOME/bin | grep -E "java|javac|jar|javadoc"

七、常见问题解决

7.1 command not found

问题: java: command not found

解决方案:

# 1. 检查是否安装
/usr/libexec/java_home -V

# 2. 检查 PATH
echo $PATH

# 3. 重新配置 JAVA_HOME
export JAVA_HOME=$(/usr/libexec/java_home)
export PATH=$JAVA_HOME/bin:$PATH

# 4. 永久生效
echo 'export JAVA_HOME=$(/usr/libexec/java_home)' >> ~/.zshrc
source ~/.zshrc

7.2 多版本冲突

问题: 多个 Java 版本导致冲突

解决方案:

# 1. 查看所有版本
/usr/libexec/java_home -V

# 2. 卸载不需要的版本
# Oracle JDK: 运行卸载程序
# Homebrew: brew uninstall openjdk@8

# 3. 设置默认版本
export JAVA_HOME=$(/usr/libexec/java_home -v 17)

7.3 权限问题

问题: Permission denied

解决方案:

# 修复权限
sudo chown -R $(whoami) /Library/Java/JavaVirtualMachines

# 或使用 sudo 执行
sudo java -version

7.4 M1/M2 芯片兼容问题

问题: ARM 架构兼容性问题

解决方案:

# 1. 下载 ARM64 版本(推荐)
# 2. 或使用 Rosetta 2 转译
softwareupdate --install-rosetta

# 3. 验证架构
java -version
# 应显示 "aarch64" 或 "arm64"

7.5 卸载 Java

# 1. 删除 Oracle JDK
sudo rm -rf /Library/Java/JavaVirtualMachines/jdk*.jdk

# 2. 删除偏好设置
sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane

# 3. 删除 Java 插件
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin

# 4. Homebrew 安装的使用
brew uninstall openjdk@17

# 5. SDKMAN 安装的使用
sdk uninstall java 17.0.8-tem

快速参考表

安装命令速查

方法安装 Java 17安装 Java 8
官网下载 DMG 安装下载 DMG 安装
Homebrewbrew install openjdk@17brew install openjdk@8
SDKMANsdk install java 17.0.8-temsdk install java 8.0.382-tem

常用命令速查

命令用途
java -version查看 Java 版本
javac -version查看编译器版本
/usr/libexec/java_home -V查看所有已安装版本
echo $JAVA_HOME查看当前 JAVA_HOME
source ~/.zshrc刷新环境变量

最佳实践建议

  1. 新手推荐:使用官网 DMG 安装,简单直接
  2. 开发者推荐:使用 Homebrew + SDKMAN,方便多版本管理
  3. 生产环境:使用 LTS 版本(Java 17 或 21)
  4. 老项目维护:保留 Java 8 环境
  5. 定期更新:关注安全更新,及时升级小版本

按照以上指南操作,你应该能在 macOS 上顺利完成 Java JDK 的查看、安装和配置。

以上就是macOS查看与安装Java JDK的完整步骤的详细内容,更多关于macOS查看与安装Java JDK的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文