spring-boot默認提供內嵌的tomcat,所以打包直接生成jar包,用java -jar命令就可以啟動。但是,有時候我們更希望一個tomcat來管理多個項目,這種情況下就需要項目是war格式的包而不是jar格式的包。spring-boot同樣提供了解決方案,只需要簡單的幾步更改就可以了,這里提供maven項目的解決方法:
1.將項目的啟動類Application.java繼承SpringBootServletInitializer並重寫configure方法
2.在pom.xml文件中,project下面增加package標簽
3.還是在pom.xml文件中,dependencies下面添加
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
這樣,只需要以上3步就可以打包成war包,並且部署到tomcat中了。
@SpringBootApplication
@EnableScheduling
public class RemindApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(RemindApplication.class);
}
public static void main(String[] args) {
SpringApplication.run(RemindApplication.class, args);
}
}