2010-11-24 94 views
4

我有任意的.xml & .mf文件,我必須在耳朵本身的META-INF文件夾中添加.mf文件。構建是使用maven2.2.1完成的。只需在$ {basedir}/src/main/application/META-INF /下添加這些文件即可,但這並不符合我的需求。有沒有另一種方法來做這樣的事情?我試過了:在Maven構建的EAR中的META-INF目錄中添加.mf&.xml文件

<build> 
<resources> 
     <resource> 
      <directory>G:/WS/vermeg/ear2/XML's</directory> 
      <targetPath>META-INF</targetPath> 
     </resource> 
    </resources> 
</build> 

但是這不會在EAR本身下添加我的xml文件。

我也試過:

<configuration> 
      <earSourceDirectory>G:\WS\vermeg\ear2\XML's\</earSourceDirectory> 
... 
</configuration> 

這個命令添加的耳朵裏面我的文件,而不是在EAR(myEar.ear/META-INF)裏面的META-INF。

任何幫助,歡迎,並會很好。日Thnx。

nacef,

+0

有什麼不對的src/main /應用 **到底是什麼? – ggb667 2014-04-03 15:52:04

回答

1

我知道了。 Thanx Jgiff。 我確實使用了maven-resources-plugin,指定了我的xml的位置,並且我希望它們在「驗證」階段在項目的META-INF文件夾中被複制,這很重要。我的POM現在看起來在某種程度上是這樣的:

<plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-resources-plugin</artifactId> 
      <version>2.4.3</version> 
      <executions> 
      <execution> 
       <id>copy-resources</id> 
        <phase>validate</phase> 
        <goals> 
        <goal>copy-resources</goal> 
        </goals> 
    <configuration> 
     <outputDirectory>G:\WS\vermeg\ear2\src\main\application\META-INF\</outputDirectory> 
      <resources> 
      <resource> 
       <directory>G:\WS\vermeg\ear2\XML's</directory> 
       <filtering>true</filtering> 
      </resource> 
      </resources> 
      </configuration> 
      </execution> 
      </executions> 
     </plugin> 

當執行一個MVN全新安裝,行家首先執行「驗證」階段,以使副本是包裝耳朵之前完成。這是成功的。

0

我將爲使用IBM Rational Application Developer(RAD)生成策略和綁定文件以部署到WebSphere Application Server(WAS)時遇到此問題的任何人添加此附加詳細信息。

在我們的案例中,我們使用RAD工具爲策略集附件生成策略綁定文件(policyAttachments.xml和wsPolicyServiceControl.xml)。默認情況下,這些被轉儲到EAR項目根目錄下的META-INF文件夾中。如果有一個方便的方法來修改這個默認行爲,以便始終將其放入應用程序/ META-INF中,我沒有遇到它。但是以上方法在RAD中使用m2e很適合在本地運行並構建EAR。

這裏是我的聚甲醛的部分用來複制這些文件:

 <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-resources-plugin</artifactId> 
     <version>2.4.3</version> 
     <executions> 
      <execution> 
       <id>copy-resources</id> 
       <phase>validate</phase> 
       <goals> 
        <goal>copy-resources</goal> 
       </goals> 
       <configuration> 
        <outputDirectory>${basedir}\src\main\application\META-INF\</outputDirectory> 
        <resources> 
         <resource> 
          <directory>${basedir}\META-INF</directory> 
          <filtering>true</filtering> 
         </resource> 
        </resources> 
       </configuration> 
      </execution> 
     </executions> 
    </plugin> 
相關問題