我在非标准文件结构中使用maven-war-plugin。
我无法更改文件夹名称或结构;所以我使用以下方法来克服这些问题:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<id>myProject</id>
<phase>package</phase>
<goals>
<goal>war</goal>
</goals>
<configuration>
<warName>myProject</warName>
<warSourceDirectory>${project.basedir}\WebContent</warSourceDirectory>
<webXml>${project.basedir}\WebContent\WEB-INF\web.xml</webXml>
</configuration>
</execution>
</executions>
</plugin>
正如您所看到的,该文件夹的名称是不同的,但Netbeans发现它没有问题。我甚至可以看到他们的网络。从IDE中的项目视图。
但是当我尝试编译时,maven找不到web.xml(就在那条路线上)
我已经将web.xml文件路径再次与webXml标签的有效pom路径进行了比较,它们是相同的。
我尝试更改插件的版本,但它没用。
请帮忙。
答案 0 :(得分:1)
configuration
块应在plugin
范围内,而不在executions
范围内。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<id>myProject</id>
<phase>package</phase>
<goals>
<goal>war</goal>
</goals>
</execution>
</executions>
<configuration>
<warName>myProject</warName>
<warSourceDirectory>${project.basedir}\WebContent</warSourceDirectory>
<webXml>${project.basedir}\WebContent\WEB-INF\web.xml</webXml>
</configuration>
</plugin>