执行目标 org.apache.maven.plugins 失败:指定的 web.xml 文件 'D:\WEB-INF\web.xml' 不存在

Posted

技术标签:

【中文标题】执行目标 org.apache.maven.plugins 失败:指定的 web.xml 文件 \'D:\\WEB-INF\\web.xml\' 不存在【英文标题】: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 中单击安装时,会生成此错误。 为什么会这样?

【问题讨论】:

它可以从命令行工作吗?你能附上一个示例项目来重现吗? 【参考方案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配置> 插件>。或完全删除您的 标记,然后通过转到默认位置让插件自行解决。

以上是关于执行目标 org.apache.maven.plugins 失败:指定的 web.xml 文件 'D:\WEB-INF\web.xml' 不存在的主要内容,如果未能解决你的问题,请参考以下文章

POM文件编译打包配置整理

-source 1.5 中不支持泛型(请使用-source5或更高版本)

mapstruct 1.4.2和lombok 1.18.16之后版本,报错和mapstruct生成空的实现

Makefile伪目标

目标的可执行性

spring-aop-2