Tomcat 安装和启停
# 01.Tomcat 安装和启停
本文讲解下 Windows 和 Linux 下 Tomcat 是如何安装和启停。
为了方便,后续实验以 Windows 下为主(当然在 Linux 下也可以,操作都是类似的)。
# 准备工作
注意,Tomcat 依赖于 Java,并且需要配置 JAVA_HOME
。
# 下载和解压 Tomcat
先去 Tomcat 官网下载:https://tomcat.apache.org (opens new window),本文使用的是 Tomcat9
也可以通过 wget 命令来下载:
cd /opt
wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.73/bin/apache-tomcat-9.0.73.tar.gz
tar -zxvf apache-tomcat-9.0.73.tar.gz
2
3
有 Linux 和 Windows 的发行版,解压到想要存放的目录即可(注意路径不要有中文和空格):
注意,不同 Tomcat 版本要求的 Java 版本是不一样的,具体参考官网文档:https://tomcat.apache.org/whichversion.html (opens new window)
# Tomcat 的卸载
删除目录、删除相关环境变量即可。
# Tomcat 目录结构
解压 Tomcat 后,Tomcat 的目录结构如下:
我们来说明一些主要的文件夹的作用:
├─bin 可执行文件
├─conf 配置文件
├─lib Tomcat依赖的jar包
├─logs 日志文件
├─temp 临时文件
├─webapps 存放项目的目录
└─work 存放运行时的数据
2
3
4
5
6
7
# Tomcat 启动和关闭
Windows 下:
方式 1:双击 apache-tomcat-9.0.73\bin\startup.bat
,可以看到有一个黑窗口打开,最后一行告诉我们启动成功了
方式 2:通过命令行启动,在命令行输入 startup
启动后浏览器访问:http://localhost:8080 (opens new window)
关闭:
方式 1:关闭双击 startup.bat
时打开的黑窗口,或者进入 bin
目录下,双击 shutdown.bat
方式 2:在命令行输入:shutdown
Linux 下启停 Tomcat:
cd /opt/apache-tomcat-9.0.73/bin
./startup.sh
./shutdown.sh
2
3
# 配置环境变量
之前我们启停都是要去到 Tomcat 安装目录的 bin 目录下才可以启停,为了方便,我们可以添加 Tomcat 的路径到环境变量里,这样就可以在任意目录,都可以输入命令启停 Tomcat 了。新建变量:
名:CATALINA_HOME
值:自己解压Tomcat文件的路径,例如D:\Projects\apache-tomcat-9.0.73
名:CATALINA_BASE
值:D:\Projects\apache-tomcat-9.0.73
2
3
4
5
编辑 Path,配置 Tomcat 环境到 Path 中:
%CATALINA_HOME%\lib
%CATALINA_HOME%\bin
2
然后我们即使不在 Tomcat 的安装目录下,也可以启动 Tomcat 了:
D:\> startup
Using CATALINA_BASE: "D:\Projects\apache-tomcat-8.5.72"
Using CATALINA_HOME: "D:\Projects\apache-tomcat-8.5.72"
Using CATALINA_TMPDIR: "D:\Projects\apache-tomcat-8.5.72\temp"
Using JRE_HOME: "C:\Program Files\Java\jdk1.8.0_281"
Using CLASSPATH: "D:\Projects\apache-tomcat-8.5.72\bin\bootstrap.jar;D:\Projects\apache-tomcat-8.5.72\bin\tomcat-juli.jar"
Using CATALINA_OPTS: ""
2
3
4
5
6
7
# 常见问题
黑窗口一闪而过:
- 原因: 可能没有正确配置
JAVA_HOME
环境变量 - 解决方案:正确配置
JAVA_HOME
环境变量
启动报错端口号被占用:
暴力解决方法:找到占用的端口号,并且找到对应的进程,杀死该进程
柔和解决方法:修改自身的端口号。修改
conf/server.xml
文件中的 prot 字段值:<Connector port="8888" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8445" />
1
2
3
如果启动时命令行显示乱码:
- 找到安装的 Tomcat 的 conf 目录
- 找到
logging.properties
配置文件 - 在文件中找到
java.util.logging.ConsoleHandler.encoding = utf-8
这行 - 将 utf-8 修改 GBK:
java.util.logging.ConsoleHandler.encoding = GBK
- 这是因为 Windows 下,CMD 默认用的是 GBK 编码