有时候,使用Spring Boot发布程序时,我们不想使用内嵌的tomcat运行,还想用传统的war包
到tomcat
发布的方式,可以按照如下步骤进行:
step1 修改pom的packaging为war
<packaging>war</packaging>
step2 增加下面依赖覆盖内嵌的Tomcat依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
如果不指定版本,会继承parent
的版本号
step3 增加SpringBootServletInitializer的子类
/**
* 使用外部tomcat来启动项目
*/
public class WebInitializer extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(VaccineFrontStartUp.class);
}
}
备注
<build>
节点下指定<finalName>
节点,可以指定打包的名称
环境、版本说明
- jdk1.7
- spring boot:1.4.7.RELEASE
- Tomcat:7.0.85