禁用 Maven 警告消息 - “选定的战争文件包括将被忽略的 WEB-INF/web.xml”

Posted

技术标签:

【中文标题】禁用 Maven 警告消息 - “选定的战争文件包括将被忽略的 WEB-INF/web.xml”【英文标题】:Disable Maven warning message - "Selected war files include a WEB-INF/web.xml which will be ignored" 【发布时间】:2011-05-19 12:57:37 【问题描述】:

使用 Maven 2.1.1 构建 WAR 包时,我收到以下警告消息:

[WARNING] Warning: selected war files include a WEB-INF/web.xml which will be ig
nored
(webxml attribute is missing from war task, or ignoreWebxml attribute is specifi
ed as 'true')

有没有办法消除它?它不会使构建过程失败,但我只是不想看到它。

【问题讨论】:

【参考方案1】:

我已提交以下关于此问题的错误报告:https://issues.apache.org/jira/browse/MWAR-248

【讨论】:

此错误报告为已关闭,但我在 windows 7 上的 maven 3.0.4 中收到此消息。即使添加 src/main/webapp/WEB-INF/web.xml 到我的 pom.xml @simgineer,您应该在错误报告中发表评论。如果这没有帮助,请考虑打开一个新的错误报告并从此处链接到它。【参考方案2】:

它似乎在当前版本的 maven-war-plugin 中已修复,因此只需指定:

    <plugin>
        <artifactId>maven-war-plugin</artifactId>
        <version>2.3</version>
    </plugin>

为我修好了。 (请参阅 https://issues.apache.org/jira/browse/MWAR-248 上来自 Anders Hammar 的最后一个答案(2012 年 9 月 20 日上午 4:37)。)

【讨论】:

同意。从 2.3 版开始,他们终于为像我这样的强迫症程序员处理了这个烦人的警告消息:) 是的,这解决了它,但不知何故 &lt;webXml&gt;src/main/webapp/WEB-INF/web.xml&lt;/webXml&gt; 不适合我使用版本 2.1.1【参考方案3】:

我在 maven 3.0.1 中通过以下构建配置摆脱了这个警告(我相信也许 web.xml 是通过其他方式添加到项目中的,默认情况下不应该打包):

<project>
    ...
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.6</version>
                <configuration>
                    <packagingExcludes>WEB-INF/web.xml</packagingExcludes>
                </configuration>
            </plugin>
        </plugins>
    </build>
    ...
</project>

【讨论】:

我发现您可以将其添加到配置中,以确保 web.xml 将其放入。此时它看起来是可选的,但比抱歉更安全。 &lt;webXml&gt;src/main/webapp/WEB-INF/web.xml&lt;/webXml&gt; 包含项目相对路径似乎不起作用;但是,答案中的格式确实如此。 我会试试这个。在&lt;configuration&gt; 内我也有&lt;warName&gt;$package.final.name&lt;/warName&gt;。这是做什么的? 我必须使用 2.2 否则战争将包含一个默认的 web.xml 而不是我指定的那个。 2.1.1 工作了一段时间,但现在不行了。 我对这个回复投了反对票,因为虽然它确实消除了错误警告,但这是错误且令人困惑的事情!您应该按照Shockwave 描述的方式进行操作,或者如果您对默认的 web.xml 感到满意,则根本不要自己编写。

以上是关于禁用 Maven 警告消息 - “选定的战争文件包括将被忽略的 WEB-INF/web.xml”的主要内容,如果未能解决你的问题,请参考以下文章

动态禁用控件时显示警告消息 angular2

禁用未找到 eslint 规则的警告消息

如何在本机反应中仅禁用 setState 消息警告

禁用所有 gcc 警告

请问如何添加运行时选项来禁用检查或此警告

在 VueJS 中禁用“开发模式”警告