Spring Boot 以 war 方式部署

Spring Boot 默认自带了一个嵌入式的 Tomcat 服务器,可以以jar方式运行,更为常见的情况是需要将 Spring Boot 应用打包成一个 war 包,部署到 Tomcat、Jerry 服务器,或者商业的 Weblogic、Websphere 上。这种情况下,需要将 pom 中的 packaging 改成 war 方式。

需要将嵌入的 Tomcat 依赖方式改成provided

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
        <scope>provided</scope>
    </dependency>
</dependencies>

还需要对Main类进行修改,使其继承SpringBootServletInitializer类,并重载configure方法

@SpringBootApplication
public class Application extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Application.class);
    }
    
    public static void main(String[] args) {
        SpringApplication.run(Application.class,args);
    }
}
原文地址:https://www.cnblogs.com/dowhile/p/Spring-Boot-yi-war-fang-shi-bu-shu.html