gpt4 book ai didi

maven - Servlet 3.0 需要 webxml 属性

转载 作者:行者123 更新时间:2023-12-03 06:07:05 24 4
gpt4 key购买 nike

尝试编译 Vaadin WAR 时出现此错误:

Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.1.1:war (default-war) on project testvaadin-web: Error assembling WAR: webxml attribute is required (or pre-existing WEB-INF/web.xml if executing in update mode) -> [Help 1]

我知道这个错误意味着maven找不到我的web.xml,但是在“Book of Vaadin”中它说使用Servlet API 3.0和注释时不需要web.xml@WebServlet 在你的 UI 类中。

我正在一个单独的配置文件中编译我的小部件集(根据 this 指南),当我运行此配置文件时,它可以正常编译。但是,当我仅编译网络项目时,我收到上述错误。

什么给出了?

我是否以某种方式覆盖 Maven 行为? Vaadin 甚至没有创建 WEB-INF 目录。我想我可以创建 WEB-INF 文件夹并在其中保留一个“幽灵”web.xml 以使 Maven 满意,但这似乎不对。

我错过了什么吗?

有人知道解决这个问题的好方法吗?

最佳答案

默认情况下,如果找不到 web.xml,maven-war-plugin 将失败,请参阅 here 。如果您使用最新的原型(prototype)创建 Maven 项目,您将将此参数设置为 false:

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

如果你想使用 web.xml 而不是注释,只需创建 WEB-INF/web.xml 并在那里定义 servlet,请参阅 Book of Vaadin 了解详细说明。

关于maven - Servlet 3.0 需要 webxml 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18186590/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com