2013-01-24 37 views
0

在Maven WAR項目中,我在resources/components目錄中有許多複合組件。我願我的複合材料部件可重複使用的,而是在一個JAR單獨打包它們(他們可能關聯ManagedBeans使用Maven將JSF複合組件自動打包到JAR中

一些現有問題,如this one,解決相同或相似的任務。然而,沒有指定如何使用Maven的過程自動化

我寧願不使用螞蟻

回答

1

這爲我工作:

<resources>   
    <resource> 
     <directory>src/main/webapp/resources</directory> 
     <targetPath>META-INF/resources</targetPath> 
    </resource> 
    <resource> 
     <directory>src/main/webapp/WEB-INF/</directory> 
     <targetPath>META-INF</targetPath> 
    </resource>   
</resources> 

確保有:

<packaging>war</packaging> 

A也有Maven插件能夠讓Netbeans的識別項目作爲一個Web項目:

<plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-war-plugin</artifactId> 
     <version>2.1.1</version> 
     <configuration> 
      <failOnMissingWebXml>false</failOnMissingWebXml> 
     </configuration> 
    </plugin> 
2

我建議使用maven-antrun-pluin以下是經過驗證的例子:。

<build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-antrun-plugin</artifactId> 
       <executions> 
        <execution> 
         <id>prepare-deploy-package</id> 
         <phase>prepare-package</phase> 
         <goals> 
          <goal>run</goal> 
         </goals> 
         <configuration> 
          <tasks> 
           <copy todir="${project.build.directory}/${project.build.finalName}/META-INF/resources" overwrite="true"> 
            <fileset dir="src/main/resources"> 
            </fileset> 
           </copy> 
          </tasks> 
         </configuration> 
        </execution> 
       </executions> 
      </plugin> 
     </plugins> 
    </build> 
+0

我遇到了問題:構建時,未壓縮的輸出文件夾包含正確的資源,但是,壓縮的JAR版本缺少它們。 – Kevin

+0

maven-war-plugin你有任何額外的配置嗎? –