gradle7打包libs目录中的jar生成fat jar
需求
需要做一个公共业务包,包里引用了一些第三方的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相关推荐
- IDEA导入Gradle项目后,重现构建项目并导入jar包后但是External Libraries目录中无任何引入的jar包
问题描述:IDEA导入Gradle项目后,重现构建项目并导入jar包后但是External Libraries目录中无任何引入的jar包,并且后台报"java.lang.AbstractMe ...
- 【Python】Python项目打包发布(一)(基于Pyinstaller打包多目录项目)
Python项目打包发布汇总 [Python]Python项目打包发布(一)(基于Pyinstaller打包多目录项目) [Python]Python项目打包发布(二)(基于Pyinstaller打包 ...
- 使用spring boot创建fat jar APP
文章目录 介绍 build和run fat jar和 fat war 更多配置 介绍 在很久很很久以前,我们部署web程序的方式是怎么样的呢?配置好服务器,将自己写的应用程序打包成war包,扔进服务器 ...
- Fat Jar说明【官方】
Fat Jar Eclipse Plug-In 当前版本: alpha 升级地址: http://kurucz-grafika.de/fatjar 下载地址: project page 环境要求: ...
- Fat Jar Eclipse Plug-In Tutorial
Fat Jar Eclipse Plug-In [FJEP] (http://fjep.sourceforge.net/) 是应用One-Jar(http://one-jar.sourceforge. ...
- linux 目录中的文件和子目录生成jar包文件的方法
linux 目录中的文件和子目录生成jar包文件的方法 jar cvf spark-libs.jar -C //usr/cwgis/app/spark/jars/ .//注意:.点前面有一个空格 [r ...
- fatjar打包mysql_一个简单的解压ZIP Excl文件---gt;按时间读取Excle文件,通过Fat jar打成jar相对应的添加到mysql数据库中。 - 明月 - ITeye博客...
写道 一个简单的解压ZIP Excl文件--->按时间读取Excle文件,通过Fat jar打成jar相对应的添加到mysql数据库中. package common.gaoyang; impo ...
- 使用Maven打包生成的-SNAPSHOT.jar与-RELEASE.jar分别代表什么?SNAPSHOT是什么意思?RELEASE是什么意思?
使用Maven打包后生成 XXXXXXX-1.0.0-SNAPSHOT.jar 和 XXXXXXX-1.0.0-RELEASE.jar 的区别???? 首先,根本原因:这是因为你的pom.xml中的项 ...
- android studio 把libs包打包到apk中,设置应用以32bit去读取.so文件
android studio 把libs包打包到apk中: 只需在当前module里的build.gradle添加下列配置: sourceSets {main {jniLibs.srcDirs = [ ...
最新文章
- 【祝贺】norains同志在这里开《Windows CE大排档》书友会
- tensorflow学习笔记五:mnist实例--卷积神经网络(CNN)
- 代理加盟哪家小程序开发公司好
- 深度学习的数学 (5)偏导数
- docker-compose执行报错(selinux所致):write /proc/self/attr/keycreate: permission denied
- ABAP单元帮助类的两种使用方式
- function函数的使用
- CF 1475 D. Cleaning the Phone 思维模型
- STM32 利用空闲中断接收数据
- Linux 高级流量控制
- Django APIView源码解析
- Matter-JS Composites 混合材料 · 下
- LaTeX中的多行数学公式
- ESModule中载入commjs
- 信通院郭雪:软件供应链安全标准体系建设与洞察
- python爬虫汽车之家全车型及基本参数入数据库(截止50524个数据)(详解)
- 安信可ESP32-CAM摄像头开发demo--局域网拍照、实时视频、人脸识别
- 固高Otostudio软件使用基础知识
- 虚拟机文件远程拷贝或发送命令scp
- 食品检测实验室对环境有哪些要求