【问题标题】:Failed to execute goal org.apache.maven.plugins: The specified web.xml file 'D:\WEB-INF\web.xml' does not exist执行目标 org.apache.maven.plugins 失败:指定的 web.xml 文件 'D:\WEB-INF\web.xml' 不存在
【发布时间】:2013-03-15 10:40:28
【问题描述】:

[错误] 无法执行目标 org.apache.maven.plugins:maven-war-
plugin:2.1.1:war (default-war) on project CRPS: 指定的 web.xml 文件
'D:\WEB-INF\web.xml' 不存在-> [帮助 1]
[错误]
[错误] 要查看错误的完整堆栈跟踪,请使用 -e > 开关重新运行 Maven。
[错误] 使用 -X 开关重新运行 Maven 以启用完整的调试日志记录。 [错误]
[错误] 更多 有关错误和可能的解决方案的信息,请阅读 以下文章:[错误] [帮助 1]

http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

注意:我的项目在D:\MAVEN\
项目文件夹为:D:\MAVEN\CRPS

当我在 intellij Ideas 中单击安装时,会生成此错误。 为什么会这样?

【问题讨论】:

  • 它可以从命令行工作吗?你能附上一个示例项目来重现吗?

标签: maven intellij-idea maven-3 web.xml


【解决方案1】:

正如您所见,插件正在 D:\WEB-INF 路径中查找进行战争打包所需的 web.xml,这显然是错误的查找位置。您需要通过在终端上运行时传递 -Dmaven.war.webxml=..../WEB-INF/web.xml 参数来明确指定,或者您可以通过添加将配置放入您的 pom 中

 <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.3</version>
    <executions>
      <execution>
         <phase>package</phase>
         <configuration>
           <webXml>..../WEB-INF/web.xml</webXml>
         </configuration>
      </execution>
    </executions>
  </plugin>

请注意:您不需要声明绝对路径,项目 pom 的相对路径就足够了。 用正确的路径替换点

我猜您没有使用默认的 Maven 战争项目布局,这就是您收到此错误的原因。如果你是,插件将默认从 src/main/webapp/WEB-INF/web.xml 获取 web.xml,如下例所示。

  • pom.xml
    • 主要
      • java
      • 资源
      • 网络应用
        • WEB-INF
          • web.xml

【讨论】:

  • web.xml 与您上面提到的完全相同。这是我在 pom.xml 中的插件:org.apache.maven.pluginsmaven-war-plugin2.1。 1/WEB-INF/web.xml看不懂的错误在哪里。
  • 如果您的项目布局与我在上面指出的相同,您仍然指向错误的位置,所以要么将您的配置替换为 org.apache.maven.plugins maven-war-plugin2.1.1src/main/webapp/WEB-INF/web.xml配置> 插件>。或完全删除您的 标记,然后通过转到默认位置让插件自行解决。
猜你喜欢
  • 1970-01-01
  • 2014-05-13
  • 1970-01-01
  • 2013-04-17
  • 1970-01-01
  • 2011-01-15
  • 2015-09-22
  • 2023-03-23
  • 2018-01-11
相关资源
最近更新 更多