2016-03-06 117 views
0

有3個Maven項目:Maven的戰爭插件覆蓋刪除/META-INF/context.xml

  • 我的覆蓋(其僅含context.xml中覆蓋藍圖戰)
  • 我的基
  • 我-web應用(最終項目在生產中使用爲我的基地的兒童項目)

我(其聚甲醛在現實戰爭的範圍內使用)將我的覆蓋圖作爲戰爭打包的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 

有這個XML在pom.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> 

所以,如果我建立使用mvn installmy-webapp項目,覆蓋支持hello.jpg但不是context.xml。但我刪除了覆蓋中的默認排除。

如何讓覆蓋層支持META-INF/context.xml

順便說一句:令人驚訝的是my-webapp/target/war/work/mygroup/my-overlay/META-INF/context.xml存在!

+0

準備嘗試用<包括文件= 「META-INF/context.xml的」/> – Bhushan

+0

接近,因爲目前還不清楚,是什麼不清楚的嗎? –

回答