使用外置tomcat进行运行
springboot中是集成了tomcat容器的,如果我们不想使用springboot所集成的tomcat,而想要使用自己的Tomcat外部容器,该怎么做呢?
首先,需要更改打包方式,之前是打成jar包,现在需要打成war包
然后,将依赖中的tomcat去除掉
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- 移除嵌入式tomcat插件 -->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
最后,修改启动类,继承SpringBootServletInitializer,重写configure方法
@SpringBootApplication
public class ProviderApp extends SpringBootServletInitializer{
public static void main(String[] args) {
SpringApplication.run(ProviderApp.class,args);
}
// SpringBootServletInitializer是原有的web.xml文件的替代
// 修改启动类,继承 SpringBootServletInitializer 并重写 configure 方法
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
// 指向原先用main方法执行的Application启动类
return builder.sources(ProviderApp.class);
}
}
将生成的war包放到tomcat中就可以运行了
本文由 mdnice 多平台发布