目录
- 核心概念:JDK, JRE, JVM 是什么?
理解这三个概念是配置 Java 环境的基础。
(图片来源网络,侵删) - 第一步:下载并安装 JDK (Java Development Kit)
选择版本、下载安装包、完成安装。
- 第二步:配置环境变量
- 这是最关键的一步,让系统能找到 Java。
- Windows 详解
- macOS / Linux 详解
- 第三步:验证安装
使用命令行检查 Java 是否安装成功。
- 第四步:编写并运行你的第一个 Java 程序 (Hello World)
创建文件、编译代码、运行程序。
- 常见问题与解决方案
- 针对
javac不是内部或外部命令等常见问题的排查方法。
- 针对
核心概念:JDK, JRE, JVM 是什么?
在开始之前,我们先理清这三个经常被提及的术语:

-
JVM (Java Virtual Machine - Java 虚拟机)
- 作用:是运行 Java 字节码的虚拟机,JVM 负责解释执行字节码,并将其转换成特定平台(如 Windows, macOS, Linux)的机器码。
- 核心价值:“一次编写,到处运行” 的关键,开发者只需将代码编译成字节码(
.class文件),任何安装了对应 JVM 的系统都能运行它,无需关心底层硬件和操作系统。
-
JRE (Java Runtime Environment - Java 运行时环境)
- 作用:是运行 Java 程序所必需的环境的集合,它包含了 JVM 和 Java 程序运行所需要的核心类库(如
java.lang,java.util等)。 - 类比:如果你想运行别人已经写好的 Java 程序(比如一个游戏或软件),你只需要安装 JRE 就够了。
- 作用:是运行 Java 程序所必需的环境的集合,它包含了 JVM 和 Java 程序运行所需要的核心类库(如
-
JDK (Java Development Kit - Java 开发工具包)
- 作用:是用于开发 Java 程序的完整工具包,它不仅包含了 JRE,还包含了编译器(
javac)、调试器、文档生成工具等开发所必需的工具。 - 类比:如果你想编写、编译和调试自己的 Java 代码,你必须安装 JDK。
- 作用:是用于开发 Java 程序的完整工具包,它不仅包含了 JRE,还包含了编译器(
- 要运行 Java 程序:安装 JRE 或 JDK(JDK 包含 JRE)。
- 要开发 Java 程序:必须安装 JDK。
对于初学者和开发者来说,我们直接安装 JDK 是最简单、最全面的选择。

第一步:下载并安装 JDK
选择版本
- LTS (Long-Term Support) 版本:推荐初学者和大多数项目使用,Oracle 提供长期支持,更稳定,目前最新的 LTS 版本是 Java 21,上一个主流 LTS 版本是 Java 17 和 Java 11。
- 最新版本:如果你想使用最新的特性,可以下载最新的非 LTS 版本,如 Java 22。
下载安装包
- 访问 Oracle 官方下载页面:https://www.oracle.com/java/technologies/downloads/
- 根据你的操作系统(Windows, macOS, Linux)选择对应的版本。
- 注意:下载可能需要登录 Oracle 账户,如果你不想登录,也可以使用 Adoptium (前身是 AdoptOpenJDK) 提供的 OpenJDK,它与 Oracle JDK 完全兼容且免费开源。
- Adoptium 下载地址:https://adoptium.net/
安装过程
-
Windows:
- 双击下载的
.msi安装包。 - 一路点击 "下一步" 即可。强烈建议记住安装路径,默认通常是
C:\Program Files\Java\jdk-xx(xx 为版本号)。 - 安装程序会自动帮你配置好环境变量(对于较新版本的安装包),但为了保险起见,我们后面会手动验证和配置。
- 双击下载的
-
macOS:
- 下载
.dmg文件。 - 双击打开,将
JDK拖拽到Applications文件夹即可。 - 安装完成后,打开终端,输入
sudo installer -pkg /Volumes/JDK\ XX/JDKXX.pkg -target /(XX为版本号) 来完成安装,通常拖拽到 Applications 后就已经安装好了。
- 下载
-
Linux (以 Ubuntu/Debian 为例):
- 下载
.deb或.tar.gz包。 - 推荐使用包管理器安装,更简单且方便管理:
# 更新软件包列表 sudo apt update # 安装默认的 JDK (通常是 OpenJDK) sudo apt install openjdk-17-jdk
- 如果你下载了
.tar.gz文件,解压后需要手动配置环境变量。
- 下载
第二步:配置环境变量
这一步的目的是告诉操作系统去哪里寻找 java 和 javac 这两个命令。
Windows
-
找到 JDK 安装路径
- 如果你不确定路径,可以在 "开始" 菜单搜索 "环境变量",然后点击 "编辑系统环境变量"。
- 在弹出的窗口中,点击 "环境变量..."。
- 在 "系统变量" 区域,找到名为
Path的变量,双击它。
-
添加 JDK 和 JRE 路径
- 在 "编辑环境变量" 窗口中,点击 "新建"。
- 添加 JDK 的
bin目录路径:- 如果你的 JDK 安装在
C:\Program Files\Java\jdk-21.0.2,那么就添加C:\Program Files\Java\jdk-21.0.2\bin。
- 如果你的 JDK 安装在
- 添加 JRE 的
bin目录路径:- JRE 通常和 JDK 在同一个父目录下,
C:\Program Files\Java\jdk-21.0.2,在 JDK 安装时,JRE 可能被创建在jre文件夹中,路径如C:\Program Files\Java\jdk-21.0.2\jre\bin,如果找不到jre文件夹,可以只添加 JDK 的bin路径,因为现代 JDK 已经不严格区分了。
- JRE 通常和 JDK 在同一个父目录下,
- 注意:路径中的
\在 Windows 中是有效的,但使用 也可以,路径不要有多余的空格或引号。 - 点击 "确定" 保存所有窗口。
macOS / Linux
-
打开终端 (Terminal)。
-
确定 JDK 安装路径
- 如果你使用包管理器安装,路径通常是
/usr/lib/jvm/下的某个文件夹。 - 你可以使用
ls /usr/lib/jvm/命令查看。 - 如果你手动解压安装,路径就是你解压的目录,
/home/yourname/Downloads/jdk-21。
- 如果你使用包管理器安装,路径通常是
-
编辑配置文件
- 在终端中输入以下命令来编辑配置文件(推荐使用
nano,简单易用):nano ~/.bash_profile
- 如果你使用的是 Zsh (macOS Catalina 及以后版本默认),则编辑
~/.zshrc:nano ~/.zshrc
- 如果你使用的是 Zsh (macOS Catalina 及以后版本默认),则编辑
- 在终端中输入以下命令来编辑配置文件(推荐使用
-
添加环境变量
- 在文件末尾添加以下两行。请务必将
/path/to/your/jdk替换为你自己的 JDK 路径。export JAVA_HOME=/path/to/your/jdk export PATH=$JAVA_HOME/bin:$PATH
- 示例:如果你的 JDK 路径是
/usr/lib/jvm/java-21-openjdk-amd64,那么添加的内容就是:export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64 export PATH=$JAVA_HOME/bin:$PATH
- 在文件末尾添加以下两行。请务必将
-
保存并退出
- 在
nano编辑器中,按Ctrl + X,然后按Y,最后按Enter保存。
- 在
-
使配置生效
- 运行以下命令让当前的终端会话加载新的配置:
source ~/.bash_profile # 如果编辑的是 .zshrc,则运行: # source ~/.zshrc
- 运行以下命令让当前的终端会话加载新的配置:
第三步:验证安装
打开一个新的终端或命令提示符窗口(确保是配置后新开的,这样才能加载新的环境变量),然后输入以下命令:
java -version
如果安装成功,你会看到类似下面的输出,显示你安装的 Java 版本:
java version "21.0.2" 2025-01-16
Java(TM) SE Runtime Environment (build 21.0.2+13-LTS-58)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.2+13-LTS-58, mixed mode, sharing)
再输入另一个命令,验证编译器是否可用:
javac -version
如果也成功,会显示:
javac 21.0.2
如果两个命令都成功执行,恭喜你!Java 环境已经配置完成。
第四步:编写并运行你的第一个 Java 程序 (Hello World)
创建源代码文件
-
在你的电脑上创建一个新的文件夹,
D:\JavaProjects(Windows) 或~/JavaProjects(macOS/Linux)。 -
在这个文件夹中,创建一个新的文本文件,并将其命名为
HelloWorld.java。 -
用记事本、VS Code、Sublime Text 或任何你喜欢的代码编辑器打开
HelloWorld.java文件,并输入以下代码:public class HelloWorld { public static void main(String[] args) { // 打印 "Hello, World!" 到控制台 System.out.println("Hello, World!"); } }注意:
- 文件名
HelloWorld.java必须与类名public class HelloWorld完全一致(包括大小写)。 - Java 代码区分大小写。
- 文件名
编译代码
- 打开终端或命令提示符。
- 使用
cd命令切换到你刚刚创建HelloWorld.java文件的目录。cd D:\JavaProjectscd ~/JavaProjects
- 输入以下命令进行编译:
javac HelloWorld.java
javac是 Java 编译器的命令。- 如果编译成功,当前目录下会多出一个
HelloWorld.class文件,这是 Java 虚拟机可以理解的字节码文件。
运行程序
- 确保你仍然在
HelloWorld.java所在的目录下。 - 输入以下命令来运行程序:
java HelloWorld
java是 Java 虚拟机的启动命令。- 注意:这里只需要类名
HelloWorld,不要加上.class后缀。
如果一切顺利,你将在终端中看到输出:
Hello, World!
常见问题与解决方案
问题:'javac' 不是内部或外部命令,也不是可运行的程序或批处理文件。
- 原因:系统找不到
javac.exe文件,这意味着Path环境变量没有配置正确,或者你安装的可能只是 JRE 而不是 JDK。 - 解决方案:
- 重新检查你的 JDK 是否安装成功。
- 重新检查 Windows 的
Path变量,确保JDK的\bin目录被正确添加了。 - 确保你使用的是新的命令提示符窗口来运行命令。
问题:'java' 不是内部或外部命令...
- 原因:与
javac类似,系统找不到java.exe,通常是JAVA_HOME没有配置,或者Path中没有正确指向 JDK 的bin目录。 - 解决方案:
- 检查
JAVA_HOME变量是否设置正确,其值应该是 JDK 的根目录(如C:\Program Files\Java\jdk-21.0.2),而不是bin目录。 - 检查
Path变量中是否有%JAVA_HOME%\bin(Windows) 或$JAVA_HOME/bin(macOS/Linux) 这样的条目。
- 检查
问题:Error: Could not find or load main class HelloWorld
- 原因:Java 虚拟机在当前目录或
CLASSPATH指定的路径下找不到HelloWorld这个类。 - 解决方案:
- 最常见的原因:你在运行命令时加了
.class后缀,请使用java HelloWorld而不是java HelloWorld.class。 - 不在正确的目录:确保你使用
cd命令切换到了HelloWorld.class文件所在的目录。 - 类名和文件名不匹配:再次确认
public class HelloWorld和文件名HelloWorld.java的大小写和拼写完全一致。
- 最常见的原因:你在运行命令时加了
希望这份详细的教程能帮助你成功搭建 Java 开发环境!祝你学习愉快!
