war包部署到tomcat

457 阅读1分钟

这里来说说怎么部署war包。

  • 1.pom中设置war包打包
<packaging>war</packaging>
  • 2.springboot的spring-boot-starter-web中内置了tomcat,我们通过war包方式,所以要去除内置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>
  • 3.去掉了内置的tomcat,要加上servlet依赖
         <!-- 打包war [3] 添加依赖 -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <scope>provided</scope>
        </dependency>
  • 4.springboot的启动类通过jar包的方式,通过war包的话,需要写一个war包启动类
// 打包war [4] 增加war的启动类
public class WarStarterApplication extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        // 指向Application这个springboot启动类
        return builder.sources(Application.class);
    }
}

随后打成war包放入webapps文件夹就完事了。