1、首先SpringBoot默认是内嵌tomcat,要放到独立的tomcat中运行,去掉内嵌tomcat;
第一种
1 2 3 4 5 6 7 8 9 10 | < dependency > < groupId >org.springframework.boot</ groupId > < artifactId >spring-boot-starter-web</ artifactId > < exclusions > <!-- 移除嵌入式tomcat插件 --> < exclusion > < groupId >org.springframework.boot</ groupId > < artifactId >spring-boot-starter-tomcat</ artifactId > </ exclusion > </ exclusions > </ dependency > |
第二种
1 2 3 4 5 6 | <!-- 如果使用第三方tomcat请增加scope --> < dependency > < groupId >org.springframework.boot</ groupId > < artifactId >spring-boot-starter-tomcat</ artifactId > < scope >provided</ scope > </ dependency > |
2、在pom文件中将 packaging 改为war,war 可以部署到tomcat的 webapps 中,随tomcat的启动而启动。
<packaging>war</packaging>
3、将项目的启动类Application.java继承SpringBootServletInitializer并重写configure方法
@SpringBootApplication public class DemoApplication extends SpringBootServletInitializer { public static void main(String[] args) { SpringApplication.run(DemoApplication. class , args); } @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return builder.sources(DemoApplication. class ); } } |