外部 Tomcat 部署详细
1. 改造为 WAR 项目
修改 pom.xml
打包方式
<packaging>war</packaging>
排除内嵌容器
<!-- 如之前误引 spring-boot-starter-tomcat 需 provided,本 DAY 无 -->
添加 provided
范围的 Servlet API(已做可跳过)
<dependency><groupId>jakarta.servlet</groupId><artifactId>jakarta.servlet-api</artifactId><version>6.0.0</version><scope>provided</scope>
</dependency>
新建 ServletInitializer
(Spring 纯注解需要)
public class ServletInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {@Overrideprotected Class<?>[] getRootConfigClasses() {return new Class<?>[] { AppConfig.class, DataConfig.class }; // 后两者合并也行}@Overrideprotected Class<?>[] getServletConfigClasses() {return null; // 已全在 Root 里}@Overrideprotected String[] getServletMappings() {return new String[] { "/" };}
}
若你仍用
web.xml
可跳过本类,但建议统一注解。
2. Maven 打包
mvn clean package -DskipTests
# 生成 target/library.war (≈ 18 MB)