周蓬勃SpringBoot

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

2018-07-06  本文已影响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

上一篇 下一篇

猜你喜欢

热点阅读