1. springboot的tomcat使用外部提供的.
<!-- 打war包时加入此项, 告诉spring-boot tomcat相关jar包用外部的,不要打进去 -->
dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-tomcat</artifactId>
   <scope>provided</scope>
</dependency>

2. springboot启动类: 继承 SpringBootServletInitializer 重写其configure()方法
public class ServletInitializer extends SpringBootServletInitializer {
<span class="hljs-annotation">@Override</span>
<span >protected</span> SpringApplicationBuilder <span >configure</span>(SpringApplicationBuilder builder) {
    <span class="hljs-comment">// 传入SpringBoot的主程序类</span>
    <span >return</span> builder.sources(SbdemoApplication.class);
}

}



 

  1. 注意: tomcat版本号也是影响启动成功与否

    , tomcat版本号与springboot相关联, 我在这里找了好久没找到原因, tomcat8.X 和 tomcat8.5 就不一样