netbeans下将全部jar包打成一个,俗称fat jar[通俗易懂]

netbeans下将全部jar包打成一个,俗称fat jar

大家好,又见面了,我是全栈君。

netbeans的java项目中。默认会将配置好的外部引用jar包,复制到dist文件夹的lib文件夹中去。假设须要公布出去。就须要将dist文件夹生成的jar和lib文件夹都拷贝出去公布,不方便。

有非常多办法能够将全部须要的jar合成一个,俗称fat jar。

较简单的办法是改动 build.xml文件

注意默认的build.xml里面有一些凝视,当中有一行:

      -post-jar:                 called after JAR building  在jar编译完毕之后调用


于是在build.xml的 project节点的最后,添加一点内容:

   <target name=”-post-jar”> 
   <jar destfile=”./dist/终于合成的fat_jar包.jar”> 
      <zipfileset src=”./dist/lib/依赖的第三方包1.jar”/> 
      <zipfileset src=”./dist/lib/依赖的第三方包2.jar”/> 
<!–      <zipfileset src=”${reference.SubProject.jar}”/>  假设依赖其它project,在此增加–>

      <!–Include the main project dist jar…standard NB var–> 
      <zipfileset src=”${dist.jar}”/> 
   </jar> 
</target> 

然后正常使用build。clean and build功能。就会在dist文件夹下生成合成的fat jar包。

可是直接这样生成的jar包,会出现一个问题:

当用java -jar xxx.jar运行时,会报:

no main manifest attribute, in xxx.jar

因为这样打jar包。丢失了manifest信息。

解决的方法:

添加一些内容:在      <zipfileset src=”${dist.jar}”/> 这一行以下

        <manifest >
            <attribute name=”Main-Class” value=”xxx.Xxx”/>
        </manifest>

当中xxx.Xxx能够抄原生jar文件里的manifest中的Main-Class的值就可以。

又一次Clean and Build,  all set.

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115494.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • jboss项目文件路径_java读取一个文件夹下的所有文件

    jboss项目文件路径_java读取一个文件夹下的所有文件==========转自:https://blog.csdn.net/tomcat_2014/article/details/50624120===========JavaWeb中读取文件资源的路径问题转载 2016年02月02日15:34:4916757在做javaweb开发的时候,我们可能会需要从本地硬盘上读取某一个文件资源,或者修改某一个文件,这个时候就需要先找到这个文件,然后用FileI…

    2022年9月19日
    0
  • html代码实现表格_印象笔记表格怎么调整宽度

    html代码实现表格_印象笔记表格怎么调整宽度学习更多建议菜鸟教程Target使用<!DOCTYPEhtml><htmllang=”en”><head><metacharset=”UTF-8″><title>图像,视频</title></head><body><imgsrc=”src\image\li.webp”width=”300px”/><videocontrolsautoplay

    2022年8月11日
    7
  • 让王老吉崛起的三大营销战役「建议收藏」

    让王老吉崛起的三大营销战役「建议收藏」一个存在了百年的区域市场老品牌,在短短5年时间内崛起,迅速成长为具有全国影响力的饮料销售冠军,而且博得了良好的社会美誉,这其中有什么不为人知的营销实践?又有着怎样的成长秘诀?梳理王老吉的发展史,我们注意到,有三大营销战役决定了这个品牌的崛起。撷取这三次营销个案,不但可以让我们知道王老吉的崛起密码,还可以了解到网络营销、品牌定位、产品延伸等营销前沿思想的现实实践。一个“网络营销”的经典案例?如

    2022年10月25日
    0
  • sql 中文转拼音首字母

    sql 中文转拼音首字母

    2021年10月14日
    44
  • c++ opencv保存图片

    c++ opencv保存图片本人在做人脸采集的时候遇到了要用c++opencv保存图片的问题,下面是方法,代码是抠出来的,由于是项目所以全部代码就不放出来了直接使用c++opencv的接口函数使用方法。cv::imwrite(path_filename,picture)path_filename:为保存图片的路径和图片名,picture为要保存到图片,下面是例子。 #include&lt;opencv…

    2022年6月14日
    147
  • 【Yocto】devtool修改源代码「建议收藏」

    【Yocto】devtool修改源代码「建议收藏」【Yocto】devtool修改源代码。

    2022年10月5日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号