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

实现方法一:
pom文件添加以下及节点

<build>
   <resources>
      <resource>
    <directory>src/main/java</directory>
      </resource>     
    </resources>
</build>

说明:默认的资源文件夹是src/main/resource,此方法修改了资源文件夹,让你默认的资源文件夹变成了src/main/java文件夹。而这个文件夹在maven中是默认放置源代码的。
缺点:修改之后,src/main/resource文件夹就不是资源文件夹了,放在里面的文件将不会被当作资源。

实现方法二:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.3</version>
    <executions>
    <execution>
        <id>copy-resources</id>
        <phase>process-resources</phase>
        <goals>
        <goal>copy-resources</goal>
        </goals>
        <configuration>
        <outputDirectory>${project.build.outputDirectory}</outputDirectory>
        <resources>
            <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.java</include>
            </includes>
            </resource>
        </resources>
        </configuration>
    </execution>
    </executions>
</plugin>

说明:插件maven-resources-plugin默认处理资源和测试资源,把资源加入到文件夹${project.build.outputDirectory},这个引用表示项目的输出文件夹。
一般是项目的WEB-INFclasses文件夹。等到打包的时候,就把这个文件夹里面的内容打包成jar文件。所以想要把源代码打包到jar文件里面
,就需要把源代码当作资源文件添加到文件夹${project.build.outputDirectory}。
缺点:代码比较长
优点:不会修改资源文件夹,项目结构不用改变,推荐使用这一种