maven实现打包带源代码的jar包

本文为转载,原文见http://blog.csdn.net/qq_30930805/article/details/71439634

实现方法一:

pom文件添加以下及节点 

[html] view plain copy
 
 print?
  1. <build>  
  2.    <resources>  
  3.       <resource>  
  4.         <directory>src/main/java</directory>  
  5.       </resource>       
  6.     </resources>  
  7. </build>  



说明:默认的资源文件夹是src/main/resource,此方法修改了资源文件夹,让你默认的资源文件夹变成了src/main/java文件夹。而这个文件夹在maven中是默认放置源代码的。 

缺点:修改之后,src/main/resource文件夹就不是资源文件夹了,放在里面的文件将不会被当作资源。

实现方法二:

[html] view plain copy
 
 print?
  1. <plugin>  
  2.     <groupId>org.apache.maven.plugins</groupId>  
  3.     <artifactId>maven-resources-plugin</artifactId>  
  4.     <version>2.3</version>  
  5.     <executions>  
  6.         <execution>  
  7.             <id>copy-resources</id>  
  8.             <phase>process-resources</phase>  
  9.             <goals>  
  10.                 <goal>copy-resources</goal>  
  11.             </goals>  
  12.             <configuration>  
  13.                 <outputDirectory>${project.build.outputDirectory}</outputDirectory>  
  14.                 <resources>  
  15.                     <resource>  
  16.                         <directory>src/main/java</directory>  
  17.                         <includes>  
  18.                             <include>**/*.java</include>  
  19.                         </includes>  
  20.                     </resource>  
  21.                 </resources>  
  22.             </configuration>  
  23.         </execution>  
  24.     </executions>  
  25. </plugin>  

说明:插件maven-resources-plugin默认处理资源和测试资源,把资源加入到文件夹${project.build.outputDirectory},这个引用表示项目的输出文件夹。

一般是项目的WEB-INFclasses文件夹。等到打包的时候,就把这个文件夹里面的内容打包成jar文件。所以想要把源代码打包到jar文件里面

,就需要把源代码当作资源文件添加到文件夹${project.build.outputDirectory}。 
缺点:代码比较长 
优点:不会修改资源文件夹,项目结构不用改变,推荐使用这一种

原文地址:https://www.cnblogs.com/chenlin1990/p/8269969.html