你真正需要的是 JDK
上一篇讲到,Java 会被编译成字节码,然后在 JVM 上运行。要在自己的电脑上完成这两步,只需安装一样东西:JDK(Java 开发工具包)。JDK 打包了 javac 编译器、运行字节码的 JVM,以及你会调用的标准库。
你可能还听说过 JRE(Java 运行时环境)。JRE 可以运行 Java 程序,但不能编译,因为它没有 javac。作为开发者,你需要的是 JDK,它是 JRE 的超集。如今的下载默认就是 JDK,所以你很少需要做选择。
如果只是跟着本页的示例练习,这些都不需要安装:这些页面上的编辑器代码块在云端运行。想运行你自己的完整程序,Java 在线编译器也无需安装。等你想在自己的电脑上编译和运行 Java 时,再安装 JDK。
选择版本和发行商
下载之前,先快速做两个决定。
版本: 安装最新的 LTS(长期支持)版本。截至 2026 年,这个版本是 Java 21。LTS 版本会被支持很多年,也是真实项目的目标版本,可以帮你避免意外。非 LTS 版本每六个月发布一次,用来尝鲜没问题,但 LTS 是稳妥的默认选择。
发行商: Java 这门语言有许多免费发行版,它们都基于同一份 OpenJDK 源码构建。下面任何一个都是可靠、免费的选择:
- Eclipse Temurin(来自 Adoptium):最受欢迎的社区构建版本。
- Amazon Corretto:由 AWS 提供,免费,长期支持。
- Azul Zulu:另一个维护良好的免费构建版本。
选一个,下载适合你操作系统的安装程序,然后继续。对于本课程中的所有内容,它们的表现都一样。
不要从 java.com 下载面向普通用户的“Java”:那是旧的终端用户 JRE,不是 JDK。请去你所选发行商的开发者下载页面。
在你的平台上安装
不同操作系统的步骤略有不同。如果有包管理器,就用包管理器,这样升级起来毫不费力。
Windows
- 下载
.msi安装程序(例如 Temurin 21)并运行。安装过程中,如果有相应选项,请勾选设置JAVA_HOME和添加到 PATH。 - 或者使用 winget 包管理器:
winget install EclipseAdoptium.Temurin.21.JDK
macOS
- 下载
.pkg安装程序并运行,或者使用 Homebrew:
brew install temurin
Linux(Debian/Ubuntu)
sudo apt update
sudo apt install openjdk-21-jdk
在 Fedora/RHEL 上是 sudo dnf install java-21-openjdk-devel。这些是 shell 命令,不是 Java 代码,它们会在整个系统范围内安装 JDK。
验证安装是否成功
很多人会跳过这一步,结果白白浪费一个小时。打开一个新的终端(这样它才会读取更新后的 PATH),运行两条命令。
java -version
你应该会看到类似下面的内容:
openjdk version "21.0.3" 2024-04-16 LTS
OpenJDK Runtime Environment Temurin-21.0.3+9 (build 21.0.3+9-LTS)
OpenJDK 64-Bit Server VM Temurin-21.0.3+9 (build 21.0.3+9-LTS, mixed mode)
接着确认编译器也在,这一步才能证明你装的是 JDK,而不只是运行时:
javac -version
javac 21.0.3
如果 java -version 能用,而 javac 报告“command not found”,说明你安装的是只有 JRE 的包,或者 PATH 指向的是一个运行时。请安装 JDK 包(上面的包名都以 -jdk 或 -devel 结尾),然后重新打开终端。
快速做个本地冒烟测试
当两条命令都报告了版本号,你的电脑就能编译和运行 Java 了。你将在本地编译的这个程序,在浏览器里也能直接运行,所以在碰终端之前,你就可以先核对一下输出:
System.getProperty("java.version") 会询问正在运行的 JVM 是哪个版本,这是确认安装是否符合预期的好办法。每个 Java 程序都位于一个类中,程序从上面看到的 main 方法开始执行。在你自己的电脑上,你会把它保存为 Main.java,用 javac 编译,再用 java 运行。这两步正是下一篇要讲的内容。
关于 JAVA_HOME 和 PATH
有两个环境变量经常出现:
- PATH 告诉 shell 去哪里找
java和javac可执行文件。如果在任何目录下都能运行java -version,说明 PATH 设置正确。大多数安装程序会帮你处理好。 - JAVA_HOME 指向 JDK 的安装文件夹。只是运行
java的话不需要它,但 Maven、Gradle 等构建工具以及许多 IDE 会读取它来定位 JDK。把它设置为包含bin目录的那个文件夹(而不是bin本身)。
如果之后某个工具抱怨找不到 JDK,而 java -version 却能正常运行,那几乎总是因为 JAVA_HOME 没有设置或设置错了。
下一篇:运行 Java
你已经有了一个可用的 JDK,也验证了编译器。下一篇会把它变成真正的工作流程:编写 .java 文件,用 javac 编译,用 java 运行,并弄清楚每一步分别产生了什么。
常见问题
写 Java 需要 JDK 还是 JRE?
你需要的是 JDK(Java 开发工具包)。JRE 只能运行 Java 程序:它有 JVM 和类库,但没有编译器。JDK 包含 JRE 的全部内容,另外还有 javac 编译器和开发工具,所以写代码要安装的是它。如今的下载默认提供 JDK,单独的 JRE 基本已经消失了。
应该安装哪个 Java 版本?
安装最新的 LTS(长期支持) 版本:截至 2026 年,当前的 LTS 是 Java 21。LTS 版本会获得多年的更新,也是大多数项目的目标版本。可以从 Adoptium(Temurin)、Amazon Corretto 或 Azul Zulu 获取免费的构建版本,它们底层都是 OpenJDK。
如何检查是否已经安装了 Java?
打开终端,运行 java -version。如果看到版本号,说明已经安装了 JVM。然后运行 javac -version:如果它也打印出版本号,说明你有完整的 JDK,可以编译代码。如果 java 能用而 javac 不能,说明你只有运行时,请安装 JDK。