版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ypp91zr/article/details/82713282
由于spring内置了tomcat,启动类启动main方法就可以使用,但是在生产环境服务器等觉得不是很方便,于是想用外部的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>
由于已经移除了内置tomcat,所以需要servlet
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
重要的来了,Application这个启动类必须继承SpringBootServletInitializer
目前好像没有其他办法,必须继承SpringBootServletInitializer这个类
代码:
package com.pinyu.system;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.support.SpringBootServletInitializer;
import org.springframework.context.annotation.ComponentScan;
@SpringBootApplication
@ComponentScan(basePackages = "com.pinyu.system")
@MapperScan("com.pinyu.system.mapper")
public class Application extends SpringBootServletInitializer {
}
好了,现在可以使用外部tomcat来启动项目了,本人还是习惯外部tomcat好点。