返回
极客谈Android Gradle:签名配置与依赖管理
Android
2023-12-12 21:51:42
Android Gradle (二)签名配置和依赖管理
大家还记得上一篇文章中提到的buildSrc目录吗?它就是一个gradle的插件工程,这个工程非常重要,任何非产品级的代码都可以放到这个目录中,比如CI/CD文件、单元测试代码、lint脚本等。
Gradle的签名配置主要放在buildSrc目录中的build.gradle文件中的android属性中。由于涉及公司的安全问题,就不展开讲了。
接下来聊一下Gradle的依赖管理,一个Android项目通常会有几十个甚至是几百个依赖,比如对Dagger依赖、对OkHttp依赖、对ButterKnife依赖等,项目的依赖维护也是一个非常重要的知识点。
依赖管理
- 在项目的根目录下新建settings.gradle文件,用于配置根工程的插件信息。
pluginManagement {
repositories {
gradlePluginPortal()
google()
}
}
dependencyResolutionManagement {
repositories {
gradlePluginPortal()
google()
}
versionCatalogs {
libs {
from(files('../gradle/libs.versions.toml'))
}
}
}
- 在项目工程中的build.gradle文件中的dependencies属性中配置各组件的依赖。
dependencies {
implementation(libs.appcompat)
implementation(libs.recyclerview)
implementation(libs.constraintlayout)
}
- Gradle提供了依赖版本锁定机制,可以再libs.versions.toml文件中进行设置。
[versions]
kotlin = '1.5.10'
appcompat = '1.4.0'
recyclerview = '1.2.0'
constraintlayout = '2.0.4'
依赖排除
有时候,项目中的某个库依赖了一个自己不需要的库,或者是两个库依赖了同一个库的不同版本。
- 这种情况下,可以通过依赖排除机制进行排除。
dependencies {
implementation(libs.butterknife) {
exclude group: 'com.android.support'
}
}
- 从上面的代码可以看出,如果butterknife依赖了一个com.android.support的库,那么就会被排除掉。
好了,这篇文章就先聊到这里,欢迎关注我的博客,我是极客谈技术,我们下期见。