spring boot默认创建出来的应用程序是内嵌web容器的,直接运行jar文件就可以的,但通常我们也需要将程序部署到tomcat中,这需要做如下改进:
1.pom.xml修改
打包方式需要修改成war:<packaging>war</packaging>
spring-boot-starter-web的配置中需要排除tomcat
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<artifactId>log4j-over-slf4j</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
同时为了应用能够正常编译,还需要加上tomcat的引用:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
2.重写SpringBootServletInitializer类中的configure方法
- @Configuration
 - @ComponentScan
 - @EnableAutoConfiguration
 - 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/jpfss/p/9719930.html