maven打包时,同时打包源码 Build a source-JAR from the current project.

来源:互联网 发布:七天网络查分登录注册 编辑:程序博客网 时间:2024/04/29 22:51

Plugin: http://maven.apache.org/plugins/maven-source-plugin/

The Source Plugin has five goals:

  • source:aggregate aggregrates sources for all modules in an aggregator project.
  • source:jar is used to bundle the main sources of the project into a jar archive.
  • source:test-jar on the other hand, is used to bundle the test sources of the project into a jar archive.
  • source:jar-no-fork is similar to jar but does not fork the build lifecycle.
  • source:test-jar-no-fork is similar to test-jar but does not fork the build lifecycle.

1. 打包 main 目录代码到 jar 归档文件

mvn source:jar

2. 打包 test 目录代码到 jar 归档文件

mvn source:test-jar


3. 如果不想每次都传入上面的参数,可以将插件目标绑定到mvn生命周期的阶段,

将maven-source-plugin的jar-no-fork目标绑定到default生命周期的verify阶段,

以后执行mvn install命令时,在verify之后install之前会自动打包源代码,
生成somenamexxx-1.0.0-sources.jar文件


[html] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. <project>  
  2.   ...  
  3.   <build>  
  4.     <plugins>  
  5.       <plugin>  
  6.         <groupId>org.apache.maven.plugins</groupId>  
  7.         <artifactId>maven-source-plugin</artifactId>  
  8.         <version>2.4</version>  
  9.         <executions>  
  10.           <execution>  
  11.             <id>attach-sources</id>  
  12.             <phase>verify</phase><!--  要绑定到的生命周期的阶段 在verify之后,install之前执行下面指定的goal -->  
  13.             <goals>  
  14.               <goal>jar-no-fork</goal><!-- 类似执行mvn source:jar -->  
  15.             </goals>  
  16.           </execution>  
  17.         </executions>  
  18.       </plugin>  
  19.     </plugins>  
  20.   </build>  
  21.   ...  
  22. </project>  
0 0