web Xml无法正常工作

时间:2015-01-16 00:38:34

标签: java maven maven-plugin

我在非标准文件结构中使用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路径进行了比较,它们是相同的。

我尝试更改插件的版本,但它没用。

请帮忙。

1 个答案:

答案 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>