2016-06-13 15 views
1

特定文件夾我有一個Maven項目創建一個額外的JAR,我需要生成三個獨立的罐子如何爲使用Maven

  • 一個主應用程序(默認)
  • 一個源代碼(maven-source-plugin
  • ,一個用於駐留在target/docs

問題我的應用程序文件:我怎樣才能CREA只包含target/docs文件夾的罐子嗎?

+0

什麼是在docs文件夾中?生成的東西? – khmarbaise

+0

是的,它的生成,我把它移動到類/靜態 – benaich

回答

1

您可以添加以下到你的Maven pom.xml文件,build/plugins部分:

<plugin> 
    <artifactId>maven-jar-plugin</artifactId> 
    <version>3.0.1</version> 
    <executions> 
     <execution> 
      <configuration> 
       <classifier>docs</classifier> 
       <classesDirectory>${project.build.directory}/docs</classesDirectory> 
       <includes>**/*</includes> 
      </configuration> 
      <id>pack-docs</id> 
      <phase>package</phase> 
      <goals> 
       <goal>jar</goal> 
      </goals> 
     </execution> 
    </executions> 
</plugin> 

這基本上是:

  • 使用maven-jar-pluginjar目標收拾一新的假象爲項目
  • 添加(或attaching)它作爲分類符(docs後綴附加到項目的正常約定文物,例如artifactId-version.jar
  • 設置target\docs作爲文件的來源,使用標準${project.build.directory}屬性,而不是target(這是在默認情況下它的值)

運行

mvn clean package 

那麼你將不得不爲的一部分輸出

  • jar文件通常創建,例如sample-project-1.0.0-SNAPSHOT.jar
  • 新的docs文件,例如, sample-project-1.0.0-SNAPSHOT-docs.jar
+0

作品像一個魅力,10'x – benaich