maven eclipse wtp没有将自定义<web xml>文件放在WEB-INF文件夹</web xml>中

时间:2011-10-26 12:17:48

标签: maven web.xml eclipse-wtp maven-war-plugin

当我使用eclipse wtp部署webapp时,pom.xml中指定的自定义“webxml”文件不会以“web.xml”的形式复制到WEB-INF文件夹。但是,该文件已在WEB-INF文件夹中的war中正确复制。

以下是pom.xml的片段

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.1.1</version>
    <configuration>
        <webXml>${webXmlPath}</webXml>
        <packagingExcludes>WEB-INF/web.xml</packagingExcludes>
    </configuration>
</plugin>

$ {webXmlPath}取决于配置文件,并具有默认值:

<properties>
        <webXmlPath>${basedir}/src/main/webapp/WEB-INF/web-embed.xml</webXmlPath>
</properties>

谢谢:)

1 个答案:

答案 0 :(得分:1)

如果使用m2e-wtp,则/.settings/org.eclipse.wst.common.component应包含以下条目:

  

<wb-resource deploy-path="/WEB-INF/web.xml" source-path="/src/main/webapp/WEB-INF/web-embed.xml"/>

这应该可以解决问题。

现在对于支持它的服务器适配器(目前仅限JBoss AS),使用<packagingExcludes>WEB-INF/web.xml</packagingExcludes>实际上会阻止部署任何 web.xml。其他服务器适配器(如Tomcat)将忽略该指令。