有3个maven项目:
我将my-overlay作为一个包装为战争的maven项目:
+ my-overlay
+ src
+ main
+ webapp
+ META-INF
+ context.xml
+ hello.jpg
+ pom.xml
最终的my-overlay.war包含/META-INF/context.xml
和/hello.jpg
。
现在我有另一个项目
+ my-base
+ pom.xml
在pom.xml
中使用此xml:
<packaging>pom</packaging>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<overlays>
<overlay>
<id>my-overlay</id>
<excludes /> <!-- remove the exlude of /META-INF/ -->
</overlay>
<overlay></overlay>
</overlays>
</...>
我有第三个maven项目:
+ my-webapp
+ main
+ webapp
+ index.jsp
+ pom.xml
在pom.xml
:
<parent> ... my-base ...</parent>
<packaging>war</packaging>
因此,如果我使用my-webapp
构建mvn install
项目,则叠加层支持hello.jpg
,但不支持context.xml
。但我删除了叠加层中的默认排除。
如何让叠加层支持META-INF/context.xml
?
顺便说一下:令人惊讶的是my-webapp/target/war/work/mygroup/my-overlay/META-INF/context.xml
存在!