2016-06-13 16 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