正确配置JAVA_HOME指向JDK根目录(如C:\Program Files\Java\jdk-21),再将%JAVA_HOME%\bin添加至Path顶部,最后用新终端执行echo %JAVA_HOME%、java -version和javac -version验证三者一致。

Java 本身不配置环境变量,是操作系统(如 Windows)需要为 Java 工具链配置环境变量,让系统知道 JDK 安装在哪、命令在哪。核心就是设置两个变量:JAVA_HOME 和 Path。
JAVA_HOME 必须指向 JDK 根目录
这个变量不是给 Java 运行用的,而是给 Maven、Gradle、Tomcat、IDE 等工具找 JDK 用的。
关键点:
- 变量名必须是
JAVA_HOME(大小写敏感,Windows 下通常不区分,但建议统一大写) - 变量值填的是 JDK 的安装根目录,不是
bin文件夹
✅ 正确示例:C:\Program Files\Java\jdk-21或D:\Java\jdk-17.0.1
❌ 错误示例:C:\Program Files\Java\jdk-21\bin
如果路径含空格(如
Program Files),不用加引号,Windows 环境变量原生支持带空格路径。
Path 中添加 %JAVA_HOME%\bin
这是让你能在任意目录下直接敲 java 或 javac 的关键。
操作步骤:
- 找到系统变量中的
Path,点击【编辑】 - 点击【新建】,输入:
%JAVA_HOME%\bin - 建议把这个条目移到列表靠前位置,避免旧版本 JDK 干扰
不要手动写死完整路径(如
C:\...\jdk-21\bin),否则换 JDK 版本时还得改 Path;用%JAVA_HOME%更灵活。立即学习“Java免费学习笔记(深入)”;
CLASSPATH 一般不用配
JDK 9+ 默认自动加载核心类库,绝大多数项目无需手动设 CLASSPATH。
除非你明确需要加载自定义 jar 或特殊目录,否则跳过即可。
若真要配(比如老项目兼容):
- 新建系统变量:
CLASSPATH - 值设为:
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
(开头的.表示当前目录,不可省略)
改完必须新开终端才能生效
环境变量具有继承性:已打开的 CMD/PowerShell 不会自动更新。
验证前务必:
- 关闭所有已有命令行窗口
- 重新打开一个新的 CMD 或 PowerShell
- 输入以下命令检查:
echo %JAVA_HOME% java -version javac -version
三者都正常输出,说明配置成功。
如果 java -version 成功但 javac -version 失败,大概率是 Path 没加对 bin 目录。


















