天天看點

SpringBoot項目打包war部署

文章目錄

          • pom檔案
          • 添加啟動類
          • 部署至Tomcat

打包過程總體與jar包類似,但是依賴需要更改,主要差別在于需要部署到安裝的tomcat的webapps目錄中

pom檔案

打包配置請參考我的另一篇部落格 SpringBoot項目打包

隻需要将

改為

然後修改依賴如下

<dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
      <!-- 去除SpringBoot内置的tomcat依賴 -->
      <exclusions>
        <exclusion>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-tomcat</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
<!--    war包部署 去除内置tomcat,并添加tomcat、servlet依賴 -->
    <dependency>
      <groupId>org.apache.tomcat.embed</groupId>
      <artifactId>tomcat-embed-jasper</artifactId>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>
           
添加啟動類

原本SpringBoot項目的啟動類不變,在同級目錄加入StartWarApplication啟動類,AAAApplication為原本SpringBoot項目的啟動類

public class StartWarApplication extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(AAAApplication.class);
    }
}
           
部署至Tomcat

打包後,将war包放入tomcat安裝目錄的webapps下,啟動tomcat

通路

{ip}:{port}/{projectName}/{path}

即可

projectName為war包名稱,path為你想要通路的路徑

web