笔记仅供参考,springboot项目打包war

1.在入口项目添加packaging 为  war

<packaging>war</packaging>

2.将springboot自带的tomcat exclusion

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <exclusions>
        <exclusion>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <groupId>org.springframework.boot</groupId>
        </exclusion>
    </exclusions>
</dependency>

3.在父pom文件里面添加 servlet api 类

<dependency>
     <groupId>javax.servlet</groupId>
     <artifactId>javax.servlet-api</artifactId>
     <scope>provided</scope>
</dependency>

4.添加项目启动方式 

import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

public class WarApplication  extends SpringBootServletInitializer{

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(TangsApplication.class);
    }
}

创建一个war包的启动类,然后继承SpringBootServletInitializer类,重写configure方法。将方法的返回改成如图,使用参数里面的builder.sources(),里面放上自己原本的启动类

首先用idea里面的maven管理clean一下,然后在install,war包会出现在targger文件夹里面

 

posted @ 2021-03-28 22:34  搬砖小白。  阅读(73)  评论(0)    收藏  举报