美文网首页周蓬勃SpringBoot
Spring boot 打包为war包报错:提示缺少web.xm

Spring boot 打包为war包报错:提示缺少web.xm

作者: 步闲 | 来源:发表于2018-07-06 10:20 被阅读0次

一. 异常

在开发SpringBoot多模块项目中,打包时报错了,如下:

Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.2:war (default-war) on project xhbase-rest: 

Error assembling WAR: 

webxml attribute is required (or pre-existing WEB-INF/web.xml if executing in update mode) -> [Help 1]

二. 项目目录结构如下:

其中SpringBootApplication启动类在rest模块,rest 模块依赖于 sdk 模块,sdk 模块依赖于 core 模块,core 模块依赖于common模块。构建单模块项目和多模块项目打jar包时都不会报错。

三. 原因

maven 插件 maven-war-plugin 中 Servlet 版本太低,要求必须要有web.xml文件才行。

四. 解决办法:

要么,添加插件配置项,如下:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.6</version>
    <configuration>
        <failOnMissingWebXml>false</failOnMissingWebXml>
    </configuration>
</plugin>

要么,修改其默认版本,如下:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>3.2.0</version>
</plugin>

五. 参考

1. https://my.oschina.net/yqz/blog/847452

相关文章

网友评论

    本文标题:Spring boot 打包为war包报错:提示缺少web.xm

    本文链接:https://www.haomeiwen.com/subject/etdvuftx.html