【问题标题】:Deploy a WAR (Spring app) to Tomcat, manually through the terminal通过终端手动将 WAR(Spring 应用程序)部署到 Tomcat
【发布时间】:2026-01-20 04:30:01
【问题描述】:

首先,我要感谢您抽出宝贵时间回答我的问题。

所以我创建了一个带有演示应用程序的 Spring Maven 项目。我已经在 Tomcat(与 Netbeans 捆绑的那个)上成功运行了该项目,一切似乎都运行良好。

我应该在 Spring 中开发一个应用程序并将其部署到我只能通过 ssh 与之交互的服务器。为了模拟这种情况,我在本地机器上安装了一个新的 Tomcat 实例。我想将演示 webapp 打包到一个 WAR 文件中并将其复制到 Tomcat 的新实例中,然后从那里运行 ./startup.sh。

但是,由于找不到 WAR 文件,我的绝妙计划立即失败。我从 Netbeans 运行应用程序,并浏览了 Tomkat 的文件夹结构(netbeans 附带的,我们称之为 T1)以找到 WAR 文件,但什么也没有!

所以我已经到了无法继续的地步,我需要向社区寻求帮助。

我想我的问题是:

  • 如何获取已部署到 T1 的应用的 WAR
  • 获得 WAR 文件后,是否可以直接将其复制到 T2 的 webapps 文件夹中,并期望一切都可以直接使用?

谢谢!

附:我正在使用 Tomcat 7

【问题讨论】:

  • 你是通过mvn package打包app的吗?还要确保你的 pom.xml 中有<packaging>war</packaging>

标签: tomcat spring-mvc war web-deployment


【解决方案1】:

不确定它是如何在 NetBeans 中完成的,但通常您会在 Eclipse(右键单击->运行方式->maven 安装)中为您在项目的目标文件夹中创建一个 war 文件。之后你可以在 tomcat 中部署它(或者如果你有 maven 可执行文件,你可以通过在 pom 所在的目录中 cding 并运行 install 命令来自己做(完整参考在这里:maven install

1)使用tomcat管理器(localhost:8080/manager/html/list)登录并部署(直接)

2) 或将该war文件复制到tomcat的webapps文件夹中,如果tomcat设置为自动部署(可以在server.xml中找到),它将检测并部署它。

【讨论】:

    最近更新 更多