第一步:将spring-boot-start-web中的自带的tomcat去掉
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <!--如果在使用自带tomcat请注释下面,如果使用第三方tomcat不要注释下面 --> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency>
第二步:修改启动类的工程的pom文件中
<packaging>war</packaging>
第三步:在启动类的工程的pom文件中添加插件,这个插件是用来达成war包的
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <configuration> <warName>ers</warName> </configuration> </plugin>
第四步:我们需要类似于web.xml的配置方式来启动spring上下文了,在Application类的同级添加一个SpringBootStartApplication类,其代码如下:
public class SpringBootStartApplication extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { // 注意这里要指向原先用main方法执行的Application启动类 return builder.sources(Application.class); } }