文档说明
目标读者: 刚接触 Tomcat 和 Java Web 开发的开发人员。
前置知识: 了解基本的 Java 概念,熟悉 Windows 基本操作。
软件版本: Apache Tomcat 9.0.x, JDK 8 或 11 (LTS版本推荐)。
Tomcat 与 JDK 版本核心对照表
该表格涵盖了从 Tomcat 7 到 Tomcat 11 的主要信息,包括维护状态、支持的生命周期、所需JDK以及其支持的Java EE/Jakarta EE规范。
Apache Tomcat® - Which Version Do I Want? - 最新版本对照表
| 项目 | Tomcat 7 | Tomcat 8 | Tomcat 9 | Tomcat 10 | Tomcat 10.1 | Tomcat 11 |
|---|---|---|---|---|---|---|
| 当前分支状态 | EOL | EOL | 维护 | 稳定 | 稳定 | 稳定 |
| 所需最低JDK | JDK 6 | JDK 7 | JDK 8 | JDK 8 | JDK 11 | JDK 21 |
| 推荐/兼容JDK范围 | JDK 6, 7, 8 | JDK 7, 8, 11 | JDK 8, 11, 17, 21 (LTS) | JDK 8, 11, 17, 21 | JDK 11, 17, 21 | JDK 21+ |
| 支持的Servlet/JSP规范 | Servlet 3.0 JSP 2.2 EL 2.2 |
Servlet 3.1 JSP 2.3 EL 3.0 |
Servlet 4.0 JSP 2.3 EL 3.0 |
Jakarta Servlet 5.0 Jakarta JSP 3.0 Jakarta EL 4.0 |
Jakarta Servlet 6.0 Jakarta JSP 3.1 Jakarta EL 5.0 WebSocket 2.1 Authentication 3.0 |
Jakarta Servlet 6.1 Jakarta JSP 4.0 Jakarta EL 6.0 WebSocket 2.2 Authentication 3.1 |
| 核心特性与说明 | 支持Servlet 3.0注解、异步处理等现代特性。 | 支持Servlet 3.1,如非阻塞I/O。 | 支持HTTP/2,全面采用Servlet 4.0,带来服务器推送等新特性。 |
重大变更: 包名从 javax.* 迁移至 jakarta.*。这是为兼容Tomcat 9及以下老项目的最重要分水岭。 |
基于Tomcat 10代码库,但要求JDK 11+,并支持更新的Jakarta EE规范。 | 将继续推进Jakarta EE规范的支持。 |
| 生产环境选择建议 | 绝对不要使用。已停止安全更新,存在极高风险。 | 不建议使用。已停止安全更新,仅适用于维护极其老旧的系统。 | 当前主流稳定版本。生态完善,资料丰富,是大多数项目的安全选择。 |
适用于新项目。希望项目面向未来,使用新规范 (jakarta.*)。 |
需要运行在JDK 11及以上环境并希望使用最新Jakarta EE特性的项目。 | 用于前瞻性测试,暂不建议直接使用最新版 |
第一部分:安装前准备 - 安装与配置 JDK
Tomcat 依赖于 Java 环境,因此必须先安装 JDK。
1. 检查现有 JDK
按下
Win + R键,输入cmd并回车,打开命令提示符。-
输入命令:
java -version -
如果显示类似以下的版本信息(版本号大于等于 1.8),则说明已安装,可以跳过 JDK 安装步骤。
java version "1.8.0_291" Java(TM) SE Runtime Environment (build 1.8.0_291-b10) Java HotSpot(TM) 64-Bit Server VM (build 25.291-b10, mixed mode)
2. 下载并安装 JDK
-
访问 Oracle 官网或 OpenJDK 站点(如 Adoptium)下载 JDK。
选择最新的 JDK 8 或 JDK 11 (LTS版本) 的 Windows 安装包(如
.msi格式)进行下载。运行下载的
.msi安装程序,全程点击“下一步”即可完成安装。请记住JDK的安装路径,默认通常是C:\Program Files\Java\jdk-版本号\。
3. 配置 JAVA_HOME 环境变量 (关键步骤)
右键点击“此电脑” -> “属性” -> “高级系统设置” -> “环境变量”。
-
在下方的“系统变量”区域,点击【新建】:
-
变量名(N):
JAVA_HOME -
变量值(V): 你的 JDK 安装路径(例如:
C:\Program Files\Java\jdk-11.0.12)
https://img-blog.csdnimg.cn/20210119114809228.png
-
变量名(N):
找到并选中系统变量中的
Path,点击【编辑】。-
在弹出的窗口中,点击【新建】,然后添加以下两条路径:
%JAVA_HOME%\bin-
%JAVA_HOME%\jre\bin
https://img-blog.csdnimg.cn/20210119115059904.png
点击【确定】保存所有更改。
4. 验证 JDK 配置
重新打开一个新的命令提示符窗口(重要!),输入以下命令:
java -version
javac -version
echo %JAVA_HOME%
如果这三条命令都能正确显示版本信息和路径,说明 JDK 安装和配置成功。
第二部分:下载与安装 Tomcat 9
1. 下载 Tomcat 9
- 访问 Apache Tomcat 官方下载页面:
- 在 "Binary Distributions" -> "Core" 部分,下载
zip压缩包(例如:apache-tomcat-9.0.xx-windows-x64.zip)。这是绿色版,解压即可用,推荐使用。
2. 安装 Tomcat 9
将下载的
zip压缩包解压到你想要的安装位置,例如D:\DevTools\。-
解压后会得到一个名为
apache-tomcat-9.0.xx的文件夹。这个文件夹的路径就是你的CATALINA_HOME(Tomcat 的安装根目录)。建议:路径中不要包含中文或空格,以免出现意想不到的问题。
第三部分:启动、访问与停止 Tomcat
1. 启动 Tomcat
有两种主要方式启动 Tomcat:
方法一:通过 startup.bat (推荐用于测试/开发)
- 进入 Tomcat 的
bin目录(例如:D:\DevTools\apache-tomcat-9.0.xx\bin)。 - 双击运行
startup.bat文件。 - 会弹出一个新的命令行窗口,如果最后一行显示
INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [xxxx] milliseconds,表示启动成功。这个窗口不能关闭,关闭则Tomcat服务停止。
方法二:安装为系统服务 (用于生产环境)
以管理员身份打开命令提示符。
进入 Tomcat 的
bin目录。-
执行命令:
service.bat install 安装后,可以在 Windows 服务(
Win + R->services.msc)中找到名为Tomcat9的服务,可以设置其为自动启动。
2. 访问 Tomcat
打开浏览器,在地址栏输入:
http://localhost:8080
如果看到如下图所示的 Apache Tomcat 欢迎页面,说明安装和启动成功!
https://tomcat.apache.org/images/tomcat.png
3. 停止 Tomcat
对应启动方法一: 在 bin 目录下双击 shutdown.bat,或者直接关闭启动时弹出的命令行窗口。
对应启动方法二: 在 Windows 服务中停止 Tomcat9 服务。
第四部分:基本使用与管理
1. 目录结构说明
了解 Tomcat 的主要文件夹用途:
-
/bin: 存放启动和关闭 Tomcat 的脚本文件(如.bat)。 -
/conf: 存放配置文件,最重要的是server.xml(主配置)和web.xml(全局配置)。 -
/logs: 存放日志文件,catalina.out是核心日志,排查问题必看。 -
/webapps: Web 应用目录,你的项目(WAR包或文件夹)就放在这里。 -
/work: 存放 JSP 编译后生成的 Servlet 的.class文件。
2. 部署 Web 应用 (三种方式)
复制WAR包: 将打包好的
.war文件(如myapp.war)复制到webapps目录下。Tomcat 启动时会自动解压并部署。复制应用程序目录: 将整个Web项目的文件夹(包含
WEB-INF等)复制到webapps目录下。-
配置 Context 文件: 在
conf/Catalina/localhost/下创建一个xxx.xml文件(如myapp.xml),内容指定应用路径和物理路径,实现应用与目录分离。<Context docBase="D:\MyProjects\myapp" path="/myapp" />
3. 管理后台 (Manager App)
Tomcat 提供了一个 Web 管理界面来部署、启动、停止和卸载应用。
-
编辑
conf/tomcat-users.xml文件,在<tomcat-users>标签内添加以下内容,定义一个具有manager-gui角色的用户:<user username="admin" password="password" roles="manager-gui"/>安全警告: 务必修改为复杂的用户名和密码,生产环境不建议开放此功能。
重启 Tomcat。
访问
http://localhost:8080/manager/html,输入上面设置的用户名和密码即可登录管理后台。
第五部分:常见配置与问题排查
1. 修改端口号
Tomcat 默认使用 8080 端口。如果该端口被占用,需要修改:
- 打开
conf/server.xml。 - 找到大约 70 行的
<Connector port="8080" ... />节点。 - 将
port的值修改为其他未被占用的端口(如8090)。 - 保存文件,并重启 Tomcat。访问时需使用新端口:
http://localhost:8090。
2. 问题排查
-
启动窗口一闪而过:
- 最常见原因:
JAVA_HOME环境变量未正确配置。 - 解决方法:右键
startup.bat-> “编辑”,在最后一行添加pause。然后双击运行,查看具体的错误信息。
- 最常见原因:
-
端口冲突:
- 错误信息:
Address already in use: JVM_Bind - 解决方法:修改
server.xml中的端口号,或关闭占用 8080 端口的程序。
- 错误信息:
-
查看日志:
- 任何时候出现问题,第一选择就是查看
logs目录下的catalina.yyyy-mm-dd.log文件,里面记录了详细的错误信息。
- 任何时候出现问题,第一选择就是查看
总结
通过以上步骤,你应该已经成功在 Windows 上:
- 安装并配置了 JDK 环境。
- 下载并安装了 Tomcat 9。
- 能够启动、停止和访问 Tomcat 服务器。
- 了解了如何部署一个简单的 Web 应用程序。
- 掌握了基本的故障排除方法。
现在,你可以开始将自己的 Java Web 项目部署到 Tomcat 上进行测试和运行了!