需求

需要做一个公共业务包,包里引用了一些第三方的jar(文件形式), 需要打一个整包给业务服务使用,让业务服务不用关注这些第三方的jar, 同时不要打包其他的像日志库之类的东西。

解决

修改jar任务:

jar {from {configurations.runtimeClasspath.findAll {//打包所有libs目录中的jar文件it.parent.equals(project.rootDir.path + '/libs') && it.name.endsWith(".jar")}.collect {println 'add ' + it.namezipTree(it)}}
}

打包,报错了:

  • What went wrong:
    Execution failed for task ‘:jar’.
    Entry META-INF/spring.factories is a duplicate but no duplicate handling strategy has been set.

提示文件META-INF/spring.factories重复
spring.factories是启动类, 想了想,我把第三方包中的启动类写到了当前项目的spring.factories中,然后在from中指定排除相同的文件:

jar {from {duplicatesStrategy = DuplicatesStrategy.EXCLUDE....}
}

再次打包:
BUILD SUCCESSFUL in 735ms

gradle7打包libs目录中的jar生成fat jar相关推荐

  1. IDEA导入Gradle项目后,重现构建项目并导入jar包后但是External Libraries目录中无任何引入的jar包

    问题描述:IDEA导入Gradle项目后,重现构建项目并导入jar包后但是External Libraries目录中无任何引入的jar包,并且后台报"java.lang.AbstractMe ...

  2. 【Python】Python项目打包发布(一)(基于Pyinstaller打包多目录项目)

    Python项目打包发布汇总 [Python]Python项目打包发布(一)(基于Pyinstaller打包多目录项目) [Python]Python项目打包发布(二)(基于Pyinstaller打包 ...

  3. 使用spring boot创建fat jar APP

    文章目录 介绍 build和run fat jar和 fat war 更多配置 介绍 在很久很很久以前,我们部署web程序的方式是怎么样的呢?配置好服务器,将自己写的应用程序打包成war包,扔进服务器 ...

  4. Fat Jar说明【官方】

    Fat Jar Eclipse Plug-In 当前版本: alpha 升级地址: http://kurucz-grafika.de/fatjar 下载地址: project page 环境要求:  ...

  5. Fat Jar Eclipse Plug-In Tutorial

    Fat Jar Eclipse Plug-In [FJEP] (http://fjep.sourceforge.net/) 是应用One-Jar(http://one-jar.sourceforge. ...

  6. linux 目录中的文件和子目录生成jar包文件的方法

    linux 目录中的文件和子目录生成jar包文件的方法 jar cvf spark-libs.jar -C //usr/cwgis/app/spark/jars/ .//注意:.点前面有一个空格 [r ...

  7. fatjar打包mysql_一个简单的解压ZIP Excl文件---gt;按时间读取Excle文件,通过Fat jar打成jar相对应的添加到mysql数据库中。 - 明月 - ITeye博客...

    写道 一个简单的解压ZIP Excl文件--->按时间读取Excle文件,通过Fat jar打成jar相对应的添加到mysql数据库中. package common.gaoyang; impo ...

  8. 使用Maven打包生成的-SNAPSHOT.jar与-RELEASE.jar分别代表什么?SNAPSHOT是什么意思?RELEASE是什么意思?

    使用Maven打包后生成 XXXXXXX-1.0.0-SNAPSHOT.jar 和 XXXXXXX-1.0.0-RELEASE.jar 的区别???? 首先,根本原因:这是因为你的pom.xml中的项 ...

  9. android studio 把libs包打包到apk中,设置应用以32bit去读取.so文件

    android studio 把libs包打包到apk中: 只需在当前module里的build.gradle添加下列配置: sourceSets {main {jniLibs.srcDirs = [ ...

最新文章

  1. 【祝贺】norains同志在这里开《Windows CE大排档》书友会
  2. tensorflow学习笔记五:mnist实例--卷积神经网络(CNN)
  3. 代理加盟哪家小程序开发公司好
  4. 深度学习的数学 (5)偏导数
  5. docker-compose执行报错(selinux所致):write /proc/self/attr/keycreate: permission denied
  6. ABAP单元帮助类的两种使用方式
  7. function函数的使用
  8. CF 1475 D. Cleaning the Phone 思维模型
  9. STM32 利用空闲中断接收数据
  10. Linux 高级流量控制
  11. Django APIView源码解析
  12. Matter-JS Composites 混合材料 · 下
  13. LaTeX中的多行数学公式
  14. ESModule中载入commjs
  15. 信通院郭雪:软件供应链安全标准体系建设与洞察
  16. python爬虫汽车之家全车型及基本参数入数据库(截止50524个数据)(详解)
  17. 安信可ESP32-CAM摄像头开发demo--局域网拍照、实时视频、人脸识别
  18. 固高Otostudio软件使用基础知识
  19. 虚拟机文件远程拷贝或发送命令scp
  20. 食品检测实验室对环境有哪些要求

热门文章

  1. 服装企业ERP软件哪个公司好?施行服装ERP体系的要点是什么
  2. 【VCS】Git之无尽探索
  3. 弘辽科技:拼多多新手该如何提升直通车权重?
  4. flutter拨打电话url_launcher
  5. xshell 基本操作
  6. [蓝桥杯python] 印章:共有n种图案的印章,每种图案的出现概率相同。小A买了m张印章,求小A集齐n种印章的概率
  7. 艾媒:ofo用户份额领先摩拜超六成 每10辆共享单车7辆小黄车
  8. 胡凡算法之——全排列问题
  9. 最新B站优秀C4D教程汇总(超干)
  10. 关于git的commit提交回退的三种命令模式