1.  修改启动类继承自SpringBootServletInitializer。

2. 重写config方法:

@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(ManagementApplication.class);
}

3.  在pom文件中加入引用

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>

<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>

4. 修改war包编译

<packaging>war</packaging>

5. 将生成的war包名字修改为ROOT.war并放到webapps下面。

6. 启动。

7. 问题汇总:

  • 在tomcat部署中首先要排除springboot自带的tomcat,有两种办法:

             第一种用 <exclusions>,第二种引入tomcat包。

  • jak版本与tomcat版本匹配

             jdk1.7 一般对应tomcat7.X

             jdk1.8 一般对应tomcat8.X

项目中如果引用了其他的jar包,在启动的时候会报错误NoSuchClassFound,如:

这个的意思是我们用了ElasticSearch,必须使用tomcat8才能启动。

 




 

 

版权声明:本文为baoyi原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/baoyi/p/springboot_tomcat.html