专栏首页Java开发maven实现打包带源代码的jar包

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-INF\classes文件夹。等到打包的时候,就把这个文件夹里面的内容打包成jar文件。所以想要把源代码打包到jar文件里面 ,就需要把源代码当作资源文件添加到文件夹${project.build.outputDirectory}。 缺点:代码比较长 优点:不会修改资源文件夹,项目结构不用改变,推荐使用这一种

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Java创建父级文件夹

    試毅-思伟
  • nohup 和>/dev/null 2>&1

    在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件:

    試毅-思伟
  • FastJson过滤字段

    1、在对象对应字段前面加transient,表示该字段不用序列化,即在生成json的时候就不会包含该字段了。 比如

    試毅-思伟
  • ASWCrypter:该工具生成的Payload可以绕过目前所有的反病毒产品

    今天给大家介绍的是一款名叫ASWCrypter的Bash&Python脚本,该工具所生成的Payload可以绕过目前所有的反病毒产品。

    FB客服
  • Postman----API接口测试神器

    API是用于构建应用程序软件的一组子程序定义,协议和工具。一般来说,这是一套明确定义的各种软件组件之间的通信方法。 API测试——测试API集合,检查它们的功...

    洛米唯熊
  • Python进阶之Matplotlib入门(一)

    Matplotlib是Python的画图领域使用最广泛的绘图库,它能让使用者很轻松地将数据图形化以及利用它可以画出许多高质量的图像,是用Python画图的必备技...

    HuangWeiAI
  • 学界 | 正在涌现的新型神经网络模型:优于生成对抗网络

    选自Medium 作者:Alfredo Canziani等人 机器之心编译 参与:黄小天、吴攀 随着深度神经网络技术的发展,新型的网络架构也在不断涌现。普渡大学...

    机器之心
  • SQL 基础学习参考资料分享

    信安之路的小白成长阶段目前处于 SQL 的基础学习阶段,在每一个学习阶段都会分享一些参考资料给大家,即使大家未能成为学习的主力,但是也希望更多想要参与学习的同学...

    信安之路
  • 0基础Python最快的入门方法与实战项目!

    今天我们来分享一位前辈的心得和学习路径,他解决了纯小白基础段入门的问题,同时推荐了每个阶段适合的练手项目,希望对你有所帮助。

    python学习教程
  • 神经网络的叛离:32年前从心理学与生理学分离的瞬间

    这一算法由被誉为深度学习之父的Geoffrey Hinton提出。1986年,他发表了名为Learning representations by back-pr...

    大数据文摘

扫码关注云+社区

领取腾讯云代金券