装完 JDK 后 JAVA_HOME 和 PATH 怎么配置:Windows 环境变量设置
JDK 安装完成只是第一步,不配环境变量,命令行里敲 java 会报「不是内部或外部命令」。配置只需要做两件事:在系统变量里新建 JAVA_HOME 指向 JDK 的安装根目录,再把 %JAVA_HOME%\bin 追加到 PATH 变量里。保存后新开一个命令行窗口,分别输入 java -version 和 javac -version,能输出版本号就代表配置成功。
为什么装完 JDK 还是找不到 java
Windows 在执行命令时,只会在 PATH 环境变量列出的目录里找程序。安装 JDK 时它只是把文件放到了某个目录(比如 C:\Program Files\Eclipse Adoptium\jdk-21),并没有告诉你系统的 PATH 里还查不到这个位置。所以你在任意目录敲 java,系统找不到它,就报「不是内部或外部命令,也不是可运行的程序」。
JAVA_HOME 则是给 Maven、Tomcat、IDEA 这类 Java 工具看的:它们不通过 PATH 找 JDK,而是读取 JAVA_HOME 这个变量的值。两个变量各自的用途不同,所以都要配,缺一不可。
JAVA_HOME 应该指向哪里
JAVA_HOME 的值必须是 JDK 的安装根目录,也就是里面能看到 bin、lib、conf 这类子文件夹的那个目录,注意不要带 \bin:
- 正确示例:JAVA_HOME = C:\Program Files\Eclipse Adoptium\jdk-21
- 错误示例:JAVA_HOME = C:\Program Files\Eclipse Adoptium\jdk-21\bin
为什么不能指到 bin:Maven、Tomcat 这类工具需要从 JAVA_HOME 往下一层找 bin 里的程序,你把变量值直接给到 bin,它们会再拼一次路径,结果变成不存在的目录,直接报错「JAVA_HOME 未正确定义」。安装时可以把路径记下来,比如装在 D 盘的 jdk-21 目录,后面照着填就行。
Windows 上一步步配置环境变量
以下步骤适用于 Windows 10 和 Windows 11:
- 右键点击「此电脑」,选「属性」,再点左侧的「高级系统设置」。
- 在弹出的「系统属性」窗口里点右下角的「环境变量」按钮。
- 在下半部分的「系统变量」区域点「新建」:变量名填 JAVA_HOME(必须全大写),变量值填你的 JDK 安装根目录(可以在文件资源管理器里把 JDK 文件夹路径复制过来),点「确定」。
- 在「系统变量」列表里找到 Path,选中后点「编辑」,再点「新建」,输入 %JAVA_HOME%\bin,点「确定」。
- 把「系统属性」窗口的所有「确定」按钮都点一遍,让设置生效。
顺序不要反:先建 JAVA_HOME,再改 PATH,因为 PATH 里要引用 JAVA_HOME。%JAVA_HOME% 是变量引用语法,Windows 会自动把它展开成你填的路径,不要手动拼接完整路径。
怎么验证配置成功
改完环境变量后,必须新开一个命令行窗口(已打开的旧窗口不会加载新变量),然后依次输入三条命令:
- echo %JAVA_HOME%:输出你填的 JDK 路径。
- java -version:输出版本号(形如 java version "21.0.x")。
- javac -version:输出版本号,javac 是编译命令,它正常说明 JDK 完整可用。
三条命令都正常输出,配置就完成了。只验证第一条并不可靠:有些人 PATH 里本来就有旧版 Java,echo 正常但 java 用的还是旧版本。所以三条一起查。VS Code 或 IDEA 里如果之前开过,也要完全关闭重开,才会读到新变量。
常见坑:这几处最容易配错
新手配置时九成问题出在下面几个地方,对照检查:
- JAVA_HOME 指到了 bin 目录:改成 JDK 根目录。
- 变量名拼错或大小写不符:严格写成 JAVA_HOME。
- 没点右下角的「确定」就关了窗口:点保存,设置才写入。
- 用旧命令行窗口验证:新开一个窗口再试。
- PATH 里既有 %JAVA_HOME%\bin 又手动加了旧 JDK 的完整路径:删掉手动路径,让 %JAVA_HOME%\bin 排在其他 Java 相关项前面,否则可能被旧版拦截。
- 装了多个 JDK 版本:只改 JAVA_HOME 指向目标版本即可,PATH 那句不用动,这也是推荐用 %JAVA_HOME%\bin 而不是写死路径的原因。
- 把 JDK 装到带中文或空格的路径里:多数工具能处理空格外加引号的情况,但为省事,安装时选纯英文无空格路径更稳。
CLASSPATH 要不要配
不需要。现代 JDK(JDK 5 及以后)默认已经能正确找到核心类库,手动设置 CLASSPATH 反而容易引发类加载冲突。网上很多旧教程还在教配置 CLASSPATH,直接跳过这一步即可,只配 JAVA_HOME 和 PATH 两项就够了。
装的是哪个 JDK 都适用吗
本方法适用于所有标准 JDK 发行版,包括 Eclipse Temurin(Adoptium)、Oracle JDK 等,配置步骤完全一致。如果你还没有安装 JDK,安装包要从官方渠道下载:Eclipse Temurin 的资源在 Adoptium 官网发布页,Oracle JDK 在 Oracle 官网下载中心,本站的「JDK 下载引导」文章里有详细的官方地址与下载步骤。装好之后用本文的方法配环境变量,再回到 VS Code 装个 Java 扩展包,就可以开始写第一行 Java 代码了。
做完这几件再确认环境配置好
- [ ] 已确认 JDK 安装目录里存在 bin 文件夹
- [ ] 系统变量里有 JAVA_HOME,值指向 JDK 根目录(不含 bin)
- [ ] 系统变量 Path 里包含 %JAVA_HOME%\bin
- [ ] 新开的命令行里 echo %JAVA_HOME% 输出正确路径
- [ ] 新开的命令行里 java -version 与 javac -version 均正常输出
- [ ] 打开的 VS Code、IDEA 已完全关闭后重开