silver_kite头像
关注
JDK21安装指南:从下载到环境配置全解析封面图

JDK21安装指南:从下载到环境配置全解析

一、版本选型与核心说明

1.1 Java 发布节奏官方说明

自 Java 9 起,Oracle 正式采用6 个月一个特性版本的发布节奏,固定每年 3 月与 9 月各发布一个新版本,未完成的特性会顺延至下一个版本,不再为单个功能拖延整体发布周期。

其中长期支持(LTS)版本的发布节奏经历过一次官方调整:

  • JDK 11(2018.09)、JDK 17(2021.09):遵循每 3 年一个 LTS 的初始规则

  • 从 JDK 21 开始,Oracle 将 LTS 发布周期缩短为每 2 年一个版本,后续 JDK 25(2025.09)、JDK 29(2027.09)均按此节奏迭代

非 LTS 版本仅提供 6 个月的公开更新,适合尝鲜新特性;LTS 版本提供多年技术支持,是开发、生产环境的标准选择。

1.2 为什么选择 JDK 21

JDK 21 发布于 2023 年 9 月,是当前企业存量项目与学习场景最均衡的选择:

  1. 成熟稳定的 LTS 版本:经过 2 年多的生态适配,主流框架(Spring Boot 3.x、MyBatis-Plus 等)与开发工具均已完美兼容

  2. 免费商用许可:在 Oracle NFTC(No-Fee Terms and Conditions)协议下,可免费用于生产环境与二次分发,无授权风险

  3. 核心特性落地:虚拟线程、模式匹配、结构化并发等重要特性正式转正,开发效率提升显著

  4. 支持周期明确:NFTC 协议下的免费更新持续至 2026 年 9 月(即下一个 LTS 版本 JDK 25 发布后 12 个月),之后更新转为 OTN 付费许可

1.3 选型补充:Oracle JDK vs OpenJDK

两者基于同一套 OpenJDK 源码构建,功能与性能无本质差异,核心区别在授权与分发:

  • Oracle JDK 21:个人学习、商业生产均可免费使用,2026 年 9 月后安全更新需付费订阅;附带官方安装向导与配套工具

  • OpenJDK 发行版(如 Eclipse Temurin、Amazon Corretto):基于 GPLv2+CE 协议永久免费商用,无授权到期风险。

本文以 Oracle JDK 21 为例演示安装流程,OpenJDK 发行版的安装与环境变量配置步骤完全通用。


二、安装前准备

下载前请确认系统信息,避免下载错误架构的安装包:

Windows 系统

右键「此电脑」→「属性」,查看系统类型:当前主流设备均为 64 位操作系统,对应下载 x64 版本安装包。

macOS 系统

点击桌面左上角苹果图标 →「关于本机」,查看芯片类型:

  • Intel 芯片:下载 x64 版本

  • M1/M2/M3/M4 等 Apple Silicon 芯片:下载 arm64 版本


三、官方下载流程(安全无捆绑)

3.1 官方下载入口

直接访问 Oracle 官方下载页:Java Downloads | Oracle

不建议从第三方站点下载,避免捆绑软件与篡改安装包。

3.2 选择 JDK 21 对应版本

  1. 页面下拉找到 Java 21 下载区域,点击「JDK Download」

  2. 切换到对应系统选项卡(Linux / macOS / Windows)

  3. 根据需求选择安装包格式:

安装包格式

适用场景

说明

x64 Installer(exe/dmg)

普通开发者、新手

图形化安装向导,操作最简单

x64 Compressed Archive(zip/tar.gz)

进阶用户

绿色免安装,可自定义存放路径,需手动配置环境

x64 MSI Installer

企业批量部署

支持组策略、脚本批量安装

这里下载x64 Installer即可。

3.3 下载注意事项

  1. 下载前需勾选接受许可协议

  2. 部分地区会提示登录 Oracle 账号,可使用邮箱免费注册,或尝试跳过登录直接下载

  3. Windows 安装包文件名为 jdk-21_windows-x64_bin.exe,大小约 160-170MB


四、Windows 10/11 安装与环境配置

4.1 运行安装向导

  1. 双击下载的 exe 安装包,启动安装向导,点击「下一步」

  2. 选择安装路径:

    1. 不建议使用默认的 C:\Program Files\Java\jdk-21(路径含空格,部分旧工具可能出现兼容问题)

    2. 推荐自定义为无中文、无空格的路径,例如 E:\develop\java_jdk\jdk21

    3. 务必记住该路径,后续配置环境变量需要用到

  3. 组件保持默认「开发工具」勾选即可,无需额外安装公共 JRE

  4. 等待安装进度完成,点击「关闭」结束安装

4.2 环境变量配置(核心步骤)

环境变量的作用是让系统在任意目录下都能识别 java、javac 等命令,是开发环境的标准配置。

重要澄清:JDK 11 及以后版本不需要配置 jre\bin 路径,也不需要配置 CLASSPATH。这两项是 JDK 8 及更早版本的遗留配置,当前版本配置反而可能引发冲突。

打开环境变量窗口

推荐使用快捷命令:按下 Win + R,输入 sysdm.cpl 并回车 → 切换到「高级」选项卡 → 点击右下角「环境变量」。

配置系统变量

所有操作均在下方「系统变量」区域进行,不要配置到用户变量,避免切换账号后失效。

① 新建 JAVA_HOME 变量

  • 点击「系统变量」下方的「新建」

  • 变量名:JAVA_HOME(严格全大写,行业标准约定,Maven、Tomcat 等工具都会读取该变量)

  • 变量值:JDK 21 的安装根目录,例如 E:\Develop\java_jdk\jdk21

  • 点击「确定」保存

② 编辑 Path 变量

  • 在系统变量列表中找到 Path,双击打开编辑窗口

  • 点击「新建」,输入:%JAVA_HOME%\bin

  • 可选:选中该行,点击「上移」将其移到列表顶部,避免与系统中其他 Java 版本冲突

  • 连续点击「确定」关闭所有窗口,保存配置

4.3 配置生效验证

按下 Win + R 输入 cmd 打开命令提示符,依次执行以下命令:

java -version
javac -version

若命令均正常输出版本号与路径,且 java 与 javac 版本号一致,则基础配置成功。

五、macOS 安装与环境配置

5.1 运行安装程序

  1. 双击下载的 .dmg 镜像文件,挂载安装包

  2. 双击镜像内的 JDK 21.pkg 启动安装向导

  3. 点击「继续」→ 同意许可协议 → 选择安装位置(默认即可)

  4. 输入 Mac 开机密码确认安装,等待进度完成后点击「关闭」

JDK 21 在 macOS 下的默认安装路径为:

/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home

5.2 环境变量配置

macOS 10.15 Catalina 及以上版本默认使用 zsh 终端,更早版本使用 bash 终端,配置文件不同。

第一步:确认终端类型

打开「终端」,执行命令:

echo $SHELL
  • 输出 /bin/zsh:对应 zsh 终端(绝大多数用户)

  • 输出 /bin/bash:对应 bash 终端

第二步:编辑配置文件

zsh 终端配置:

# 若文件不存在会自动创建
open ~/.zshrc

bash 终端配置:

open ~/.bash_profile

在打开的文本文件末尾添加以下两行内容:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

保存并关闭文件。

第三步:使配置立即生效
# zsh 用户执行
source ~/.zshrc

# bash 用户执行
source ~/.bash_profile

5.3 验证配置

终端依次执行:

java -version
javac -version
echo $JAVA_HOME

输出正常则配置完成。


六、JDK 21 目录结构官方解析

JDK 21 采用模块化架构,不再包含独立的 jre 目录,运行时能力已整合进 JDK 自身;如需独立 JRE 可通过 jlink 工具按需生成。

核心目录说明:

jdk-21/
├── bin/          # 核心可执行文件:java、javac、jar、javadoc、jps、jstack 等开发与调试命令
├── conf/         # 配置文件目录:安全策略、网络配置、加密算法配置等
├── include/      # C 语言头文件:用于 JNI、JVM TI 等原生交互开发
├── jmods/        # 模块系统文件:JDK 模块化后的核心类库载体
├── legal/        # 开源许可与法律声明文件
├── lib/          # 支撑类库与运行时依赖文件
└── release       # 版本信息文件,记录 JDK 版本、构建号等信息

七、正反双向验证指南

7.1 正向验证:完整可用性校验

仅命令输出正常不足以完全验证环境可用性,推荐通过编译运行 Java 程序做完整校验:

  1. 新建文本文件,重命名为 HelloWorld.java

  2. 写入以下代码:

    public class HelloWorld {
        public static void main(String[] args) {
            System.out.println("JDK 21 环境配置成功!");
        }
    }
  3. 在文件所在目录打开命令行,执行编译:

    javac HelloWorld.java
    1. 执行运行命令:
      java HelloWorld

    7.2 逆向验证:常见故障排查

    以下是安装配置中最高频的问题,对应精准排查方案:

    故障现象

    核心原因

    解决方法

    输入 javac 提示「不是内部或外部命令」

    1. JAVA_HOME 路径配置错误

    2. Path 中未添加%JAVA_HOME%\bin

    3. 配置后未重启命令行窗口

    1. 执行 echo %JAVA_HOME% 核对路径是否真实存在

    2. 检查 Path 变量拼写,确保百分号完整

    3. 关闭所有 CMD 窗口后重新打开验证

    java -version 版本与安装版本不一致

    系统存在多个 Java 版本,Path 优先级错误

    在 Path 环境变量中将 %JAVA_HOME%\bin 上移至最顶部;卸载不需要的旧版本

    安装时提示「权限不足」

    Windows 未以管理员身份运行;macOS 密码错误或无权限

    Windows:右键安装包 →「以管理员身份运行」macOS:确认开机密码正确,账号具备管理员权限

    macOS 提示「无法打开,无法验证开发者」

    系统安全策略限制

    右键安装包 → 选择「打开」→ 在弹窗中再次点击「打开」;或在「系统设置→安全性与隐私」中点击「仍要打开」

    环境变量配置后仍不生效

    配置文件选错、未执行 source 命令

    确认终端类型对应正确的配置文件,执行 source 命令后重启终端再验证

    八、JDK 多版本管理(可跳过)

    实际开发中常需在不同项目间切换 JDK 版本,手动修改环境变量效率较低,推荐以下方案:

    Windows:简易切换脚本

    新建 jdk21.bat 文件,写入:

    @echo off
    set JAVA_HOME=D:\Develop\Java\jdk-21
    set Path=%JAVA_HOME%\bin;%Path%
    java -version

    需要切换版本时,在当前命令行窗口运行该脚本即可(仅当前窗口生效,不影响全局)。

    macOS:使用 jenv 工具

    # 安装 jenv(需先安装 Homebrew)
    brew install jenv
    
    # 添加 JDK 版本到管理
    jenv add /Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home
    
    # 查看已管理的所有版本
    jenv versions
    
    # 全局切换默认版本
    jenv global 21
    
    # 仅当前目录切换版本
    jenv local 17

    通常情况下在IDEA中可以直接手动切换,简单快捷。


    九、总结

    JDK 21 作为当前生态最成熟的 LTS 版本,是 Java 学习与企业开发的稳妥选择。安装配置本身并不复杂,绝大多数问题都源于路径拼写错误、混淆新旧版本配置规则。

    转载自 CSDN-专业IT技术社区

    原文链接:https://blog.csdn.net/2401_87660168/article/details/163783588

    文章来源转载

    评论

    赞0

    评论列表

    微信小程序
    QQ小程序

    关于作者

    点赞数:0
    关注数:0
    粉丝:0
    文章:0
    关注标签:0
    加入于:--