美文网首页mavenJava Web知识首页投稿(暂停使用,暂停投稿)
解决Eclipse引入Maven项目pom.xml文件报错问题

解决Eclipse引入Maven项目pom.xml文件报错问题

作者: 小胖0_0 | 来源:发表于2017-08-11 14:58 被阅读329次

Eclipse直接引入Maven项目的时候pom.xml文件可能会有两处报错

1、<execution>标签报错

这个比较简单

在<plugins>标签外面用一个<pluginManagement>标签将其包裹起来即可:

<pluginManagement>
     <plugins>
        <plugin>
          ..........
        </plugin>
        <plugin>
          ..........
        </plugin>
    </plugins>
</pluginManamement>

2、报web.xml文件丢失错误:"web.xml is missing and <failOnMissingWebXml> is set to true",如图

maven项目pom文件报错.png

网上很多人说解决方法是在项目的Deployment Descripter选项上右键,然后选择Generate Deployment Descriptor Stub,Eclipse会自动在WEB-INF文件夹下生成一个web.xml文件,这样确实是可以解决这个报错,如图:

自动生成web.xml.png

但是有时候有些Maven构建的java web项目并不正真需要web.xml文件,你会发现就算eclipse报丢失web.xml文件的错误,但是实际上项目是完全可以运行的,如果直接添加web.xml是多余的,并不一定能够解决问题,还有可能导致项目不能启动,比我的项目添加了自动生成的web.xml之后就无法启动。

所以如果项目没有web.xml文件也能正常启动,就表明这个项目并不真正依赖web.xml。
但是这个错误看起来让人很不舒服,那么怎么解决它呢?

解决方案:

在Maven的pom.xml配置文件中添加这样一个配置:

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

关键代码是其中的

<failOnMissingWebXml>false</failOnMissingWebXml>

表示让Eclipse忽略这个错误,即解决这个报错
不一定要自己新建一个<configuration>标签,可以直接在已有的configuration中添加这一行代码即可,如图:

直接在已有的plugin标签中加上这个标签

我使用这个方法可以完美解决丢失web.xml报错,同时可以保证项目正常运行,并不添加多余文件。

如果这篇文章也解决了你的问题,不妨给我点个赞,谢谢:D

相关文章

网友评论

    本文标题:解决Eclipse引入Maven项目pom.xml文件报错问题

    本文链接:https://www.haomeiwen.com/subject/ubolrxtx.html