java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Java21环境配置

Windows和macOS系统下Java21环境配置全流程

作者:碳基硅坊

在日常开发工作中,合适的开发环境是提升效率的重要前提,这篇文章主要介绍了Windows和macOS系统下Java21环境配置的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下

前言

在Java开发环境中,选择合适的JDK版本对项目性能、安全性和可维护性有着决定性影响。作为Java的最新长期支持(LTS)版本,JDK 21凭借其8年支持周期革命性特性,已成为企业级应用和云原生开发的首选。本文将介绍JDK 21在Windows和macOS系统下的安装配置全流程,包括环境变量设置、验证方法、常见问题排查以及主流IDE集成方案,帮助开发者快速构建稳定高效的Java开发环境。

一、JDK 21的核心优势与版本选择理由

1.1 JDK 21的特性亮点

JDK 21作为Java的最新LTS版本,引入了多项突破性技术改进:

1.2 版本选择策略

为什么选择JDK 21而不是其他版本

多版本共存场景

二、主流JDK发行版对比与选择

Java生态中存在多个JDK发行版,各有优势:
发行版 商业授权 优势 适用场景
Oracle JDK 免费开发,商用需订阅 官方特性完整,更新及时 企业级应用,需要官方支持

Eclipse Temurin 完全免费商用 社区活跃,跨平台一致性好 个人开发者,开源项目

Azul Zulu 完全免费商用 企业级支持,兼容性强 生产环境,长期维护需求

Amazon Corretto 完全免费商用 AWS生态无缝集成 AWS云环境应用

GraalVM 免费商用 支持Native Image,多语言支持 需要启动速度优化或Polyglot场景

推荐组合

三、Windows系统下JDK 21安装与配置

3.1 JDK 21下载与安装

下载JDK 21

  1. 访问Oracle官网:https://www.oracle.com/java/technologies/downloads/#jdk21-windows  或者点击这里可直接下载
  2. 选择Windows系统、x64架构和JDK 21版本
  3. 下载.exe安装包(推荐使用MSI安装包,自动配置环境变量更方便)

运行安装程序

  1. 右键点击下载的JDK 21安装包,选择"以管理员身份运行"
  2. 按照安装向导提示,点击"下一步"
  3. 选择安装路径(关键步骤)
    • 推荐路径:C:Program Files\Java\jdk-21
    • 避免中文路径,避免空格(如D:\Java\jdk21)
  4. 勾选"开发工具"组件(必须勾选,否则缺少编译器)
  5. 继续点击"下一步"完成安装
  6. 安装完成后点击"关闭"退出安装向导

3.2 环境变量配置

打开环境变量配置窗口

  1. 右键点击"此电脑"或"我的电脑",选择"属性"
  2. 点击"高级系统设置"
  3. 在"系统属性"窗口中,点击"环境变量"按钮

配置JAVA_HOME系统变量

  1. 在"系统变量"区域,点击"新建"
  2. 变量名:JAVA_HOME
  3. 变量值:填写JDK安装路径(如C:\Program Files\Java\jdk-21)
  4. 点击"确定"保存设置

配置Path系统变量

  1. 在"系统变量"中找到Path变量,点击"编辑"
  2. 点击"新建",添加:%JAVA_HOME%\bin
  3. 如果系统中存在其他JDK版本,将新建的路径上移到最上方,确保优先级
  4. 点击"确定"保存所有变更

配置CLASSPATH(可选)

  1. 在"系统变量"区域点击"新建"
  2. 变量名:CLASSPATH
  3. 变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
  4. 点击"确定"保存设置

注意:从JDK 5开始,如果未设置CLASSPATH,Java虚拟机会自动将其设置为当前目录(.),因此对于新项目,可以不配置此环境变量。

3.3 验证JDK 21配置

打开命令提示符

  1. 按Win+R组合键,输入cmd回车
  2. 或在文件资源管理器中,右键选择"在此处打开终端"

执行验证命令

java -version

若成功,应显示类似:

java version "21" 2023-09-19 LTS
Java(TM) SE Runtime Environment (build 21+12-LTS-51)
Java HotSpot(TM) 64-Bit Server VM (build 21+12-LTS-51, mixed mode)

验证编译器

javac -version

成功应显示:

javac 21

检查环境变量

echo %JAVA_HOME%

应输出之前设置的JDK路径,如C:\Program Files\Java\jdk-21。

检查路径优先级

where java

应显示%JAVA_HOME%\bin\java.exe位于路径列表最前面。

四、macOS系统下JDK 21安装与配置

4.1 JDK 21下载与安装

下载JDK 21

  1. 根据CPU架构选择版本:
    • Intel芯片:选择x64版本
    • Apple Silicon芯片:选择aarch64版本
  2. 访问下载页面:https://www.oracle.com/java/technologies/downloads/#jdk21-mac  或者点击这里直接下载
  3. 下载.dmg安装包(推荐,安装简单)

运行安装程序

5. 双击下载的.dmg文件,启动安装程序

6. 点击"继续",选择安装位置(通常为/Library/Java/JavaVirtualMachines)

7. 继续点击"继续"完成安装

8. 安装完成后点击"关闭"

手动安装(可选)

如果选择.tar.gz安装包:

sudo tar -zxvf jdk-21_macos-aarch64_bin.tar.gz -C /Library/Java/JavaVirtualMachines

4.2 环境变量配置

确定JDK安装路径

执行命令:

/usr/libexec/java_home -v 21

应返回类似:

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

配置环境变量

  1. 打开终端应用
  2. 编辑shell配置文件(根据使用的shell选择):
    • zsh(macOS催化版12+默认):vim ~/.zshrc
    • bash:vim ~/.bash_profile
  3. 在文件末尾添加以下内容:
  export JAVA_HOME=(/usr/libexec/java_home -v 21)
  export PATH=JAVA_HOME/bin:PATH
  1. 保存并退出编辑器
  2. 使配置生效:
    source ~/.zshrc

    source ~/.bash_profile

4.3 验证JDK 21配置

检查JDK版本

java -version

应显示:

openjdk version "21.0.8" 2025-07-15 LTS
Java(TM) SE Runtime Environment (build 21.0.8+12-LTS-250)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.8+12-LTS-250, mixed mode, sharing)

检查编译器版本

javac -version

应显示:

javac 21.0.8

检查JAVA_HOME变量

echo $JAVA_HOME

应输出JDK安装路径,如/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home。

五、环境变量配置常见问题排查

5.1 Windows系统常见问题

问题1:java不是内部或外部命令

原因

解决方案

  1. 检查Path变量是否包含%JAVA_HOME%\bin
  2. 关闭所有命令提示符窗口,重新打开
  3. 如果问题依旧,尝试重启电脑
  4. 使用管理员权限运行命令提示符

问题2:路径包含空格导致命令失败

原因

解决方案

  1. 最佳实践:将JDK安装到无空格路径(如D:\Java\jdk-21)
  2. 或使用Windows短路径:
     mklink /J D:Javajdk-21 "C:\Program Files\Java\jdk-21"
    
    然后配置JAVA_HOME=D:\Java\jdk-21

5.2 macOS系统常见问题

问题1:找不到JDK安装路径

原因

解决方案

  1. 检查JDK是否安装到/Library/Java/JavaVirtualMachines/下
  2. 如果手动解压,需创建Info.plist文件:
defaults write /Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Info.plist CFBundleGetInfoString "Java 21"

问题2:终端未识别新配置

原因

解决方案

  1. 确保配置文件保存成功
  2. 执行source ~/.zshrc或source ~/.bash_profile
  3. 如果仍不生效,重启终端应用

六、主流IDE的JDK 21集成方法

6.1 IntelliJ IDEA配置JDK 21

添加JDK到IDE

  1. 打开IntelliJ IDEA
  2. 通过菜单栏访问:File > Project Structure…(快捷键Ctrl+Alt+Shift+S)
  3. 在左侧选择Platform Settings > SDKs
  4. 点击右侧绿色加号按钮+,选择Add JDK
  5. 浏览并选择JDK安装目录(如C:Program FilesJavajdk-21或/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home)
  6. 点击OK保存设置

配置项目使用JDK 21

  1. 在Project Structure对话框中,选择Project Settings > Project
  2. 在Project SDK下拉菜单中选择已添加的JDK 21
  3. 确保Project language level设置为21
  4. 点击Apply或OK保存设置

Maven项目配置

  1. 在项目根目录的pom.xml文件中添加:
<properties>
    <maven.compiler.source>21</maven.compiler.source>
    <maven.compiler.target>21</maven.compiler.target>
</properties>
  1. 保存文件并重新加载Maven项目
  2. 重启IntelliJ IDEA确保配置生效

6.2 Eclipse配置JDK 21

添加JDK到IDE

  1. 打开Eclipse
  2. 通过菜单栏访问:Window > Preferences
  3. 导航至:Java > installed JREs
  4. 点击Add…,选择Standard VM
  5. 在JRE home中指定JDK安装目录(必须指向JDK根目录,而非jre子目录
  6. 点击Finish完成添加
  7. 勾选新添加的JDK,点击OK保存设置

配置项目使用JDK 21

  1. 右键点击项目,选择Properties
  2. 导航至:Java Build Path
  3. 在Libraries选项卡中,展开JRE System Library
  4. 如果显示旧版本,点击Remove移除
  5. 点击Add Library…,选择JRE System Library
  6. 选择Workspace default JRE,确保为JDK 21
  7. 点击OK保存设置

处理JDK路径问题

如果Eclipse无法识别JDK 21,可尝试以下方法:

  1. 在Eclipse安装目录下找到eclipse.ini文件
  2. 添加以下行(位于-vmargs之前):
-vm
/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home/bin/java
  1. 重启Eclipse应用

6.3 VSCode配置JDK 21

安装Java扩展包

  1. 打开VSCode
  2. 进入扩展商店(Ctrl+Shift+X或Cmd+Shift+X)
  3. 搜索并安装以下扩展:
    • Extension Pack for Java(推荐安装)
    • Java Language Support(提供语法高亮和代码补全)
    • Java Debug(支持Java调试)
    • Java Test Runner(支持运行单元测试)

配置JDK路径

  1. 打开VSCode的命令面板(Ctrl+Shift+P或Cmd+Shift+P)
  2. 输入并执行Java: Select JDK
  3. 在列表中选择已安装的JDK 21
  4. 如果列表中没有,手动指定JDK路径:
"java.home": "C:\Program Files\Java\jdk-21"
   或
"java.home": "/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home"

验证配置

  1. 打开VSCode的集成终端
  2. 执行java -version和javac -version命令
  3. 应显示JDK 21的版本信息

七、环境验证脚本与自动化检测

7.1 Windows环境验证批处理脚本

创建check_jdk.bat文件,内容如下:

@echo off
echo JDK 21环境验证开始...

echo 检查JAVA_HOME变量...
echo %JAVA_HOME%

echo 检查Java版本...
java -version

echo 检查Javac版本...
javac -version

echo 检查环境变量优先级...
where java

echo JDK 21环境验证完成!

执行该脚本应显示所有命令均成功执行。

7.2 macOS环境验证Shell脚本

创建check_jdk.sh文件,内容如下:

!/bin/bash
echo "JDK 21环境验证开始..."

echo "检查JAVA_HOME变量..."
echo JAVA_HOME

echo "检查Java版本..."
java -version

echo "检查Javac版本..."
javac -version

echo "检查环境变量优先级..."
which java

echo "JDK 21环境验证完成!"

赋予执行权限并运行:
chmod +x check_jdk.sh
./check_jdk.sh

7.3 测试类文件验证ClassPath

创建HelloWorld.java测试文件:

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World! JDK 21环境配置成功!");
        System.out.println("Java版本: " + System.getProperty("java.version"));
        System.out.println("Java SDK路径: " + System.getProperty("java.home"));
    }
}

编译与运行

Windows

javac -d . HelloWorld.java
java -cp .HelloWorld

macOS

javac -d . HelloWorld.java
java -cp .HelloWorld

成功运行应显示:

Hello, World! JDK 21环境配置成功!
Java版本: 21
Java SDK路径: C:\Program Files\Java\jdk-21

八、多版本JDK管理方案

随着Java版本迭代加速,多版本管理已成为开发者的必备技能。

8.1 使用环境变量切换

Windows系统

  1. 修改JAVA_HOME变量值为其他JDK路径
  2. 在Path变量中,将%JAVA_HOME%bin移动到相应位置
  3. 关闭并重新打开命令提示符窗口

macOS系统

  1. 在.zshrc或.bash_profile中修改JAVA_HOME设置:
export JAVA_HOME=(/usr/libexec/java_home -v 17)
  1. 执行source ~/.zshrc或source ~/.bash_profile
  2. 验证版本:java -version

8.2 使用JEnv管理多版本JDK

Windows系统

  1. 安装WSL2(Windows Subsystem for Linux)
  2. 在WSL中安装JEnv:
sudo apt-get install jenv
  1. 配置JEnv:
echo 'export PATH="HOME/.jenv/bin:PATH"' >> ~/.zshrc
echo 'eval "(jenv init -)"' >> ~/.zshrc
source ~/.zshrc
  1. 添加JDK:
jenv add /Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home
  1. 设置全局版本:
jenv global 21

macOS系统

  1. 安装Homebrew(如果尚未安装):
/bin/bash -c "(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  1. 通过Homebrew安装JEnv:
brew install jenv
  1. 配置JEnv:
echo 'export PATH="HOME/.jenv/bin:PATH"' >> ~/.zshrc
echo 'eval "(jenv init -)"' >> ~/.zshrc
source ~/.zshrc
  1. 添加JDK:
jenv add /Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home
  1. 设置全局版本
jenv global 21

九、Java 21开发环境优化与最佳实践

9.1 项目构建工具配置

Maven项目

<properties>
    <maven.compiler.source>21</maven.compiler.source>
    <maven.compiler.target>21</maven.compiler.target>
</properties>

Gradle项目

plugins {
    id 'java'
}

sourceCompatibility = 21
targetCompatibility = 21

9.2 代码风格与性能优化

虚拟线程使用示例

// 创建虚拟线程
Thread virtualThread = Thread.ofVirtual().start(() -> {
    System.out.println("正在执行虚拟线程任务");
    // 执行任务代码
});

// 使用虚拟线程ExecutorService
ExecutorService executor = Executors.newVirtualThreadPerTaskExecutor();
executor.submit(() -> {
    System.out.println("虚拟线程任务执行中");
    // 执行任务代码
});
executor.shutdown();

结构化并发示例

try (var scope = new structuredTaskScope(true)) {
    // 提交任务
    scope.fork(() -> {
        // 任务代码
        return "任务结果";
    });

    // 提交另一个任务
    scope.fork(() -> {
        // 任务代码
        return "另一个任务结果";
    });

    // 等待所有任务完成
    scope.join();

    // 处理结果
    for (var subtask : scope.getSubtasks()) {
        if (subtask.getException() != null) {
            subtask.getException().printStackTrace();
        } else {
            System.out.println("结果: " + subtask.get());
        }
    }
}

9.3 安全加固建议

JDK安全配置

  1. 禁用不必要的安全特性:
  2. 定期检查Oracle官网安全公告,更新JDK版本
  3. 生产环境建议使用OpenJDK发行版,如Temurin或Zulu
  4. 禁用Java Web Start和Java插件(已过时且不安全)

十、环境配置故障排除与解决方案

10.1 命令行无法识别java命令

解决方案

  1. 检查是否安装了JDK,而非仅JRE
  2. 确认环境变量配置正确(JAVA_HOME指向JDK根目录,Path包含%JAVA_HOME%bin)
  3. 重启命令行工具(环境变量变更需要新进程)
  4. 验证是否以管理员身份运行命令行(Windows系统)
  5. 检查是否存在多用户环境变量冲突

10.2 IDE无法识别JDK 21

解决方案

  1. IntelliJ IDEA:确保已通过File > Project Structure > SDKs添加JDK 21
  2. Eclipse:检查Window > Preferences > Java > installed JREs中是否包含JDK 21
  3. VSCode:确认Java扩展已安装,并在设置中指定了正确的java.home
  4. 清除IDE缓存:尝试File > Invalidate Caches / Restart(IntelliJ IDEA)
  5. 检查IDE版本兼容性:确保使用最新版IDE(如IntelliJ IDEA 2025.2+)

10.3 多版本JDK冲突问题

解决方案

  1. 使用where java(Windows)或which -a java(macOS)查看所有Java路径
  2. 在环境变量中明确指定优先级
  3. 使用版本管理工具如JEnv或SDKMAN!
  4. 在IDE中为每个项目单独指定JDK路径
  5. 检查系统环境变量与用户环境变量是否冲突

十一、总结与建议

JDK 21环境配置是Java开发的基础工作,正确配置不仅能确保开发环境稳定运行,还能充分利用Java 21的新特性提升应用性能。本文提供了从下载安装到环境变量配置的完整流程,并针对Windows和macOS系统分别给出了详细步骤。同时,还介绍了主流IDE的JDK集成方法和多版本管理方案,帮助开发者应对复杂开发场景。

配置JDK环境时的几个关键注意事项

  1. 路径规范:避免使用含空格和中文的路径,建议使用纯英文路径
  2. 环境变量:正确配置JAVA_HOME指向JDK根目录,Path包含%JAVA_HOME%bin
  3. 版本验证:配置完成后务必执行java -version和javac -version验证
  4. IDE集成:即使系统环境已配置,主流IDE仍需单独指定JDK路径
  5. 多版本管理:推荐使用JEnv或SDKMAN!等工具管理多版本JDK

通过本文的指导,初学者可以快速掌握JDK 21的安装配置,而有经验的开发者则能深入理解环境变量的工作原理和多版本管理的最佳实践。JDK 21的虚拟线程和结构化并发等特性将极大提升Java应用的并发性能,值得每一位Java开发者掌握。

到此这篇关于Windows和macOS系统下Java21环境配置的文章就介绍到这了,更多相关Java21环境配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

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