springboot打war包

springboot打war包

背景

    需要将springboot项目打成war包放到独立的tomcat中运行


一.修改要打包的pom.xml文件

修改pom.xml中的packaging标签


<!--<packaging>jar</packaging>-->

<!-- war [1] -->

<packaging>war</packaging>


二.排除springboot内部自带tomcat

修改pom.xml标签,修改spring-boot-starter-web依赖,排除自带的tomcat


<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

<!-- 打包war [2] 移除自带内置tomcat -->

<exclusions>

<exclusion>

<artifactId>spring-boot-starter-tomcat</artifactId>

<groupId>org.springframework.boot</groupId>

</exclusion>

</exclusions>

</dependency>

三.添加java servlet的依赖

由于我们移除了springboot内置的tomcat,所以需要手动添加一个servlet的依赖

通过pom.xml添加一下依赖


<dependency>

<groupId>javax.servlet</groupId>

<artifactId>javax.servlet-api</artifactId>

<scope>provided</scope>

</dependency>

四.添加springboot war包启动类

在springboot的入口 Application.java的同级目录下添加WarStarterApplication的自定义启动类


public class WarStarterApplication extends SpringBootServletInitializer {

    @Override

    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {

        // 指向Application这个springboot启动类

        return builder.sources(Application.class);

    }

}

五.利用maven打包

先clean一遍项目,再用install就可以打包完成了

原文地址:https://www.cnblogs.com/xiaodou00/p/13470558.html