如何对springboot2.0 war配置并放入tomcat启动成功

如何对springboot2.0 war配置并放入tomcat启动成功,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

springboot 2.0 打war包

1.配置pom文件

<packaging>war</packaging>

添加springboot-tomcat插件,用以覆盖springboot-web下的tomcat依赖,scope改成provided(只在编译和运行时起作用)

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <scope>provided</scope>
</dependency>

如果需要过滤资源文件,或者加入资源文件

<build>
    <resources>
        <resource>
            <includes>**/**</includes>
            <excludes>/**</excludes>
        </resource>
    </resources>
    .......
</build>

加入tomcat运行时,servlet容器初始化类,初始化springboot:

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

public class ServletInitializer extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(Application.class); //注意这里Application.class 是项目springboot启动类
    }
}

然后运行mvn package -DskipTests 忽略测试的打包,打完包之后target下会有两个war

app.war
app.war.original

注意:在app.war中 springboot2.0 会将 标记了provided的依赖打到一个l与lib目录同级的ib-provided目录中。

如果不需要这个,可以选择app.war.original 包作为正式包,运行都不会报错。

关于如何对springboot2.0 war配置并放入tomcat启动成功问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。