You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Tool Suite 4 如何将项目部署服务器更换为外置Tomcat等应用服务器

STS4 更换外置Tomcat部署解决方案

核心原因:你当前创建的是默认内置容器的Spring Boot项目,默认打包格式为jar,未适配外置容器的部署要求,同时Tomcat 10存在Jakarta EE包名变更的兼容性问题,才会出现添加服务器时找不到项目的情况,按以下步骤操作即可解决:

步骤1:调整项目依赖与打包配置

  • 首先修改pom.xml的打包类型,将默认的jar改为war:
<packaging>war</packaging>
  • 排除Spring Boot内置的Tomcat依赖,添加Servlet API适配依赖:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <scope>provided</scope>
</dependency>
  • 如果你使用的是Tomcat 10及以上版本,需要确保Spring Boot版本在3.0+,否则请降级到Tomcat 9(对应javax.servlet API):低版本Spring Boot只支持javax命名空间的API,和Tomcat 10的jakarta命名空间不兼容,会导致项目无法被服务器识别、部署失败。

步骤2:修改启动类配置

让启动类继承SpringBootServletInitializer,重写configure方法,适配外置容器的启动逻辑:

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

@SpringBootApplication
public class 你的启动类名 extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(你的启动类名.class);
    }

    public static void main(String[] args) {
        SpringApplication.run(你的启动类名.class, args);
    }

}

步骤3:更新项目配置并添加到服务器

  • 右键项目,选择Maven → Update Project,更新项目配置
  • 打开Servers视图,右键你已经添加的Tomcat服务器,选择Add and Remove,此时就能在可用项目列表中看到你的项目,添加后保存即可部署运行

如果你找不到Servers视图,可以通过顶部菜单Window → Show View → Servers打开,若列表中没有就选择Other,搜索Servers打开即可。

内容的提问来源于stack exchange,提问作者Henrique C.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 02:15:05