jdk安装成功需验证三件事:java和javac命令均返回一致版本号;java_home指向jdk根目录;where/which显示java与javac路径同属一个jdk的bin目录;最后编译运行hello.java输出成功信息。

安装完 JDK 后,不能只看 java -version 有输出就认为成功了。真正验证是否可用,要同时确认三件事:运行环境能启动、编译器能工作、系统知道 JDK 在哪。
运行 java 和 javac 命令看版本号
打开命令提示符(Windows)或终端(macOS/Linux),依次输入:
-
java -version—— 应输出类似java version "17.0.2"的信息,说明 JRE 运行时就绪; -
javac -version—— 应输出类似javac 17.0.2的信息,说明编译器可用;
两个命令都返回一致的版本号,才代表 JDK 安装完整。如果 javac 报“不是内部或外部命令”,大概率是只装了 JRE,或 bin 目录没加进 PATH。
检查 JAVA_HOME 是否指向正确路径
这个变量不是运行 Java 必需的,但 Maven、Gradle、IDE 等工具全靠它定位 JDK:
- Windows 输入:
echo %JAVA_HOME%,应显示类似C:\Program Files\Java\jdk-17.0.2; - macOS/Linux 输入:
echo $JAVA_HOME,应显示类似/Library/Java/JavaVirtualMachines/jdk-17.0.2.jdk/Contents/Home;
关键点:路径必须是 JDK 根目录(含 bin、lib、conf 等子目录),不能是 bin 子目录,也不能是 jre 子目录。
用 where 或 which 确认实际调用位置
避免多个 JDK 或残留 JRE 干扰:
- Windows 输入:
where java和where javac,两个命令返回的路径应同属一个jdk-x.x目录下的bin文件夹; - macOS/Linux 输入:
which java和which javac,同样要求路径一致且指向你安装的 JDK;
如果 java 来自 /usr/bin/java,而 javac 找不到,说明系统自带的是 JRE,不是你装的 JDK。
写个 Hello.java 跑通全流程
这是最实在的验证方式,确保从写代码到运行无断点:
- 新建文本文件,保存为
Hello.java,内容为:
public static void main(String[] args) {
System.out.println("JDK 验证通过!");
}
}
- 在该文件所在目录执行:
javac Hello.java→ 生成Hello.class; - 再执行:
java Hello→ 输出JDK 验证通过!。
这一步成功,说明编译器、虚拟机、类路径全部正常,开发环境真正就绪。











