为什么需要配置环境变量?
环境变量就像是操作系统的“备忘录”,它告诉操作系统在哪些位置可以找到特定的程序或文件。

-
对于 Java (JDK):
JAVA_HOME: 告诉系统 JDK 的主安装目录,很多 Java 应用程序(包括 Tomcat)的启动脚本都需要通过这个变量来找到java.exe、javac.exe等工具。Path: 告诉系统在哪里可以执行命令,我们将%JAVA_HOME%\bin(Windows) 或$JAVA_HOME/bin(Linux/macOS) 添加到Path中,这样你就可以在任何目录下直接输入java、javac等命令,而无需输入完整的路径。
-
对于 Tomcat:
CATALINA_HOME: 告诉系统 Tomcat 的主安装目录,Tomcat 的所有脚本(如startup.sh,shutdown.sh)都依赖这个变量来定位核心库和配置文件。
准备工作:安装软件
在配置环境变量之前,请确保你已经安装好了:
- Java Development Kit (JDK): Tomcat 是一个 Java 应用,必须安装 JDK,推荐使用 JDK 8 或更高版本。
- Apache Tomcat: 从 Apache Tomcat 官网 下载并解压到你想要的目录。
- Windows:
D:\apache-tomcat-10.1.x - Linux/macOS:
/usr/local/apache-tomcat-10.1.x
- Windows:
Part 1: Java 环境变量配置
这部分是基础,无论你是否使用 Tomcat,只要在命令行中使用 Java,都需要配置。

Windows 系统
假设你的 JDK 安装在 C:\Program Files\Java\jdk-17.0.2。
-
设置
JAVA_HOME- 右键点击“此电脑” -> “属性” -> “高级系统设置” -> “高级” 选项卡 -> “环境变量”。
- 在“系统变量”(或“用户变量”)区域,点击“新建”。
- 变量名:
JAVA_HOME - 变量值:
C:\Program Files\Java\jdk-17.0.2 - 点击“确定”。
-
修改
Path变量- 在“系统变量”列表中找到
Path变量,选中它,然后点击“编辑”。 - 在弹出的窗口中,点击“新建”,然后添加
%JAVA_HOME%\bin。 - 重要: 确保
%JAVA_HOME%\bin这一行在列表的上方,或者至少在其他 Java 相关路径的上方,以避免版本冲突。 - 点击“确定”保存所有更改。
- 在“系统变量”列表中找到
-
验证配置
(图片来源网络,侵删)- 打开一个新的命令提示符 或 PowerShell 窗口(不要用旧的窗口,因为它不会加载新的环境变量)。
- 输入以下命令:
echo %JAVA_HOME%
应该输出你的 JDK 安装路径。
- 输入以下命令:
java -version
应该显示你安装的 Java 版本信息。
Linux/macOS 系统 (以 Bash Shell 为例)
假设你的 JDK 安装在 /usr/lib/jvm/java-17-openjdk-amd64。
-
设置
JAVA_HOME-
打开终端。
-
找到你的 JDK 安装路径,一个常用的命令是
ls /usr/lib/jvm/。 -
编辑你的 Shell 配置文件,对于大多数现代 Linux 发行版和 macOS,推荐使用
~/.bashrc或~/.zshrc(macOS Catalina 及以后版本默认使用 Zsh)。# 如果使用 Bash nano ~/.bashrc # 如果使用 Zsh (macOS) nano ~/.zshrc
-
在文件末尾添加以下内容:
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 export PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME=...设置变量。export PATH=$JAVA_HOME/bin:$PATH将 JDK 的bin目录添加到系统的Path变量最前面,$PATH代表了原有的Path值。
-
-
使配置生效
-
保存并关闭编辑器 (在 nano 中按
Ctrl+X,Y,Enter)。 -
在终端中运行以下命令,让当前的 Shell 会话加载新的配置:
# 如果修改的是 .bashrc source ~/.bashrc # 如果修改的是 .zshrc source ~/.zshrc
-
-
验证配置
- 在终端中输入:
echo $JAVA_HOME
应该输出你的 JDK 安装路径。
- 输入:
java -version
应该显示 Java 版本信息。
- 在终端中输入:
Part 2: Tomcat 环境变量配置
这部分是专门为了让 Tomcat 能够运行。
Windows 系统
假设你的 Tomcat 安装在 D:\apache-tomcat-10.1.x。
-
设置
CATALINA_HOME- 再次打开“环境变量”设置窗口。
- 在“系统变量”区域,点击“新建”。
- 变量名:
CATALINA_HOME - 变量值:
D:\apache-tomcat-10.1.x - 点击“确定”。
-
(可选但推荐) 设置
CATALINA_OPTS- 这个变量用于设置 Tomcat 启动时的一些 JVM 参数,比如设置最大堆内存,这对于防止 Tomcat 因内存不足而出错非常重要。
- 在“系统变量”区域,点击“新建”。
- 变量名:
CATALINA_OPTS - 变量值:
-Xms512m -Xmx1024m(表示初始堆内存为 512MB,最大堆内存为 1024MB,你可以根据服务器内存大小调整) - 点击“确定”。
Linux/macOS 系统
假设你的 Tomcat 安装在 /usr/local/apache-tomcat-10.1.x。
- 设置
CATALINA_HOME和CATALINA_OPTS- 同样,我们编辑
~/.bashrc或~/.zshrc文件。 - 在之前添加的 Java 环境变量下方,继续添加:
export CATALINA_HOME=/usr/local/apache-tomcat-10.1.x export CATALINA_OPTS="-Xms512m -Xmx1024m"
- 保存文件并使其生效 (
source ~/.bashrc或source ~/.zshrc)。
- 同样,我们编辑
Part 3: 验证 Tomcat 是否能正常启动
所有的环境变量都配置好了,我们来测试一下 Tomcat。
Windows 系统
- 打开新的命令提示符或PowerShell。
- 进入 Tomcat 的
bin目录:cd D:\apache-tomcat-10.1.x\bin
- 执行启动脚本:
startup.bat
- 如果看到类似 "Tomcat started." 的信息,说明启动成功,打开浏览器,访问
http://localhost:8080,你应该能看到 Tomcat 的欢迎页面。
Linux/macOS 系统
- 打开终端。
- 给 Tomcat 的
bin目录下的脚本添加可执行权限(如果之前没有添加过):chmod +x /usr/local/apache-tomcat-10.1.x/bin/*.sh
- 进入 Tomcat 的
bin目录:cd /usr/local/apache-tomcat-10.1.x/bin
- 执行启动脚本:
./startup.sh
- 如果看到类似 "Using CATALINA_BASE: ..." 和 "Tomcat started." 的信息,说明启动成功,在浏览器中访问
http://localhost:8080查看欢迎页面。
常见问题与总结
'java' is not recognized...: 通常是JAVA_HOME没有设置,或者Path变量中没有正确添加%JAVA_HOME%\bin,请检查拼写和路径是否正确。CATALINA_HOME' is not recognized...: Tomcat 启动脚本找不到CATALINA_HOME变量,请确保已正确设置。- Tomcat 启动后立即关闭: 这通常是内存不足或端口冲突(8080 端口被其他程序占用)导致的,可以尝试调整
CATALINA_OPTS中的-Xmx值,或者使用netstat -ano | findstr :8080(Windows) /lsof -i :8080(Linux/macOS) 检查端口占用情况。 - 路径中的空格: 在 Windows 中,如果路径包含空格(如
C:\Program Files),使用%JAVA_HOME%是没有问题的,但如果手动在脚本里写,最好用引号括起来,"C:\Program Files\Java\..."。
通过以上步骤,你就为 Java 和 Tomcat 配置好了完整的环境变量,可以开始进行 Java Web 开发了。
