温馨提示×

Debian Tomcat如何换版本

小樊
37
2026-08-05 08:31:50
栏目: 智能运维

Debian 上更换 Tomcat 版本,常见有三种方式,推荐程度从高到低如下:


✅ 方式一(推荐):官方仓库直接安装指定版本

适合:生产环境、追求稳定

Debian 官方仓库里通常只有 一个 Tomcat 大版本(如 Tomcat 9 或 10),但不同 Debian 版本会提供不同 Tomcat。

1️⃣ 查看可用版本

apt update
apt-cache search tomcat

例如:

tomcat9
tomcat10

2️⃣ 安装指定版本

sudo apt install tomcat9

sudo apt install tomcat10

3️⃣ 停止旧版本并启用新版本(如果已安装)

sudo systemctl stop tomcat9
sudo systemctl disable tomcat9

sudo systemctl enable tomcat10
sudo systemctl start tomcat10

优点

  • 自动管理依赖
  • 自动 systemd 服务
  • 安全更新方便

缺点

  • 版本受 Debian 仓库限制

✅ 方式二:手动安装 Apache 官方 Tomcat(最常用)

适合:需要指定小版本(如 9.0.85)

1️⃣ 卸载旧版本(可选)

sudo apt remove tomcat9 --purge

2️⃣ 下载指定版本

cd /opt
sudo wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.85/bin/apache-tomcat-9.0.85.tar.gz

3️⃣ 解压

sudo tar -xzf apache-tomcat-9.0.85.tar.gz
sudo mv apache-tomcat-9.0.85 tomcat9

4️⃣ 创建专用用户(安全)

sudo useradd -r -m -U -d /opt/tomcat9 -s /bin/false tomcat
sudo chown -R tomcat:tomcat /opt/tomcat9

5️⃣ 配置 systemd 服务

sudo nano /etc/systemd/system/tomcat9.service

内容示例:

[Unit]
Description=Apache Tomcat 9
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment=JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
Environment=CATALINA_HOME=/opt/tomcat9
Environment=CATALINA_BASE=/opt/tomcat9

ExecStart=/opt/tomcat9/bin/startup.sh
ExecStop=/opt/tomcat9/bin/shutdown.sh

Restart=on-failure

[Install]
WantedBy=multi-user.target

6️⃣ 启动

sudo systemctl daemon-reload
sudo systemctl enable tomcat9
sudo systemctl start tomcat9

优点

  • 版本完全可控
  • 适合生产环境

缺点

  • 需手动升级

✅ 方式三:使用 SDKMAN(仅开发环境)

适合:开发 / 测试

curl -s "https://get.sdkman.io" | bash
source ~/.sdkman/bin/sdkman-init.sh

sdk install tomcat 9.0.85

不推荐用于服务器


⚠️ 注意事项

  1. Tomcat 9 → 10 是重大升级

    • 包名从 javax.* 改为 jakarta.*
    • 旧项目可能不兼容
  2. 修改端口

/opt/tomcat9/conf/server.xml
  1. 检查 Java 版本
java -version
  • Tomcat 9 → Java 8+
  • Tomcat 10 → Java 11+

✅ 推荐方案总结

场景 推荐方式
生产服务器 官方仓库 或 手动安装
指定小版本 手动安装
本地开发 SDKMAN

如果你愿意,可以告诉我:

  • Debian 版本(cat /etc/debian_version
  • 当前 Tomcat 版本
  • 想升级到哪个版本

我可以给你 精确的操作步骤

0