1. 程式人生 > >springboot打包war部署至tomcat

springboot打包war部署至tomcat

1、把pom.xml檔案中打包結果由jar改成war:

<modelVersion>4.0.0</modelVersion>  
<groupId>spring-boot-panminlan-mybatis-test</groupId>  
<artifactId>mybatis-test</artifactId>  
<packaging>war</packaging>  
<version>0.0.1-SNAPSHOT</version> 

2、排除org.springframework.boot依賴中的tomcat內建容器
<dependency>  
        <groupId>org.springframework.boot</groupId>  
        <artifactId>spring-boot-starter-web</artifactId>  
        <exclusions>  
            <exclusion>  
                <groupId>org.springframework.boot</groupId>  
                <artifactId>spring-boot-starter-tomcat</artifactId>  
            </exclusion>  
        </exclusions>  
    </dependency> 
3、新增對servlet API的依賴
<dependency>  
            <groupId>javax.servlet</groupId>  
            <artifactId>javax.servlet-api</artifactId>  
        </dependency> 
4、繼承SpringBootServletInitializer ,並覆蓋它的 configure 方法,如果我們構建的是war包並部署到外部tomcat則需要使用它,如果使用內建servlet容器則不需要,外接tomcat環境的配置需要這個類的configure方法來指定初始化資源。
@SpringBootApplication
public class GuideserverApplication extends SpringBootServletInitializer {

	public static void main(String[] args) {
		SpringApplication.run(GuideserverApplication.class, args);
	}

	@Override
	protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
		return application.sources(GuideserverApplication.class);
	}
}