SpringBoot2.0.4部署在tomcat容器中

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才能启动。

 
 
 
 

猜你喜欢

转载自www.cnblogs.com/baoyi/p/springboot_tomcat.html