当前位置:网站首页>Gradle剔除依赖演示
Gradle剔除依赖演示
2022-07-31 05:25:00 【Max恒】
//1.直接依赖第三方开源库,一般是托管在 jitpack 或者 jcenter
implementation 'com.google.code.gson:gson:2.2.4'
implementation 'com.android.support:cardview-v7:25.0.0'
implementation 'com.android.support:design:25.0.0'
//2.直接依赖本地的aar文件,一般是在libs目录下
implementation(name: 'LiteAVSDK_Professional_5.1.5293', ext: 'aar')
//3.直接依赖本地的jar文件
implementation files('libs/bdasr_V3_20170801_60da871.jar')
//4.依赖本地的model
implementation project(':wavelibrary')
implementation project(':android-ffmpeg')库工程依赖传递问题
1、依赖常用的基本类型有:provided和compile,provided 只在编译生效不会打包到 apk 或 aar 中;compile 是会打包到 apk或 aar 中的(如果是库工程的话有特殊情况,参考下面3).
2、app 工程的当前(compile+) 的依赖都会打包到 app 中
3、库工程中:
1) jar 包:远程依赖不会打包到 aar 中;本地依赖会;
2) aar:远程和本地都不不会打包到 aar中.
3) 如果你要提供你的库工程的 aar 给他人,你需要同时告诉他这个库工程依赖的其他aar 和远程 jar包(因为他们没有打包到 aar 中)
4) 如果通过工程依赖(即compile project(':lib')的方式), 依赖是可以传递的,所以不需要在声明一次依赖.
去掉重复依赖
1.第三方库中同样使用了implementation或者compile依赖相同的库
implementation('com.allenliu.versionchecklib:library:2.0.5') {
exclude group: 'com.android.support', module: 'appcompat-v7'
exclude group: 'com.android.support.constraint', module: 'constraint-layout'
exclude group: 'org.greenrobot', module: 'eventbus'
exclude group: 'com.squareup.okhttp3', module: 'okhttp'
}边栏推荐
猜你喜欢
随机推荐
对van-notice-bar组件定义内容进行设置
磁盘管理与文件系统
Oracle入门 04 - Vmware虚拟机安装配置
哪吒监控安装脚本
Openssl一键自签证书
银河麒麟v10 sp1 安装 PostgreSQL 11.16
简单计算器,单层循环输出乘法表,字符串方法的使用,格式化输出
ls的用法
How to use repeating-linear-gradient
【博学谷学习记录】超强总结,用心分享 | 软件测试 测试基本概念、模型与用例
【云原生】3.3 Kubernetes 中间件部署实战
银河麒麟高级服务器v10 sp1 手动加载Raid卡驱动
ES6-01-ES的简介
一文读懂 MongoDB 和 MySQL 的差异
es6数组/数组对象求并集、交集、差集、去重、排序
浅析v-model语法糖的实现原理与细节知识及如何让你开发的组件支持v-model
MySQL表的增删改查(1)
在级联选择器,根据不会重复的字段,来获取当前的对象
成员内部类使用方式(工作)
Oracle入门 11 - Linux 开关机及系统进程命令









