Reputation: 3548
I'm getting the following error when building my maven-project with the command mvn clean install
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.2:war
(default-war) on project MyProject:
Error assembling WAR: webxml attribute is required (or pre-existing
WEB-INF/web.xml if executing in update mode)
I do have web.xml in the project. In the folder web/WEB-INF/web.xml
I am using IntelliJ IDEA. I can avoid this problem by adding the following to pom.xml:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
</plugins>
</build>
But I'd like to know why maven claims that web.xml is missing even though it's not and it is in the default location when creating a new web application project in IntelliJ IDEA.
Upvotes: 5
Views: 17079
Reputation: 11267
Your problem is that you have web.xml
in this path: web/WEB-INF/web.xml
With Maven, the web.xml
should go in src/main/webapp/WEB-INF
or you should change the webXml
configuration of the war plugin (see here: https://maven.apache.org/plugins/maven-war-plugin/war-mojo.html#webXml)
Upvotes: 12