看着文章手动写demo ,记录自己的学习过程。(注:写得不好不要见怪,有问题谢谢大佬指出)
注:我是在学习的组件化的时候才接触到了Gradle的管理。如果没有一个统一的依赖配置,那么每个model 可能都重复的去配置版本号,重复一些依赖,这样就不好进行维护管理,所以就要去做依赖管理
我用过的gradle管理方法:
1:使用 ext 的方式管理插件依赖库 :这是 Google 推荐管理依赖的方法 Android官方文档
弊端:由于多 module 工程需要共享一些变量,ext 定义的位置可能在其他地方,最大的问题在于,IDE 不能跳转到这些变量的定义
在日常使用中,如果你对工程不是很熟悉,那么在依赖版本需要更改的时候就要查找一段时间,这不免很影响工作效率。
2:buildSrc:自动补全和单击跳转,依赖更新时 将重新 构建整个项目
弊端:A change in buildSrc causes the whole project to become out-of-date.(Gradle 文档)
每次依赖更新都重新构建整个项目,编译速度过慢
循环优化Gradle依赖管理
在项目目录下File 创建一个全局配置“config.gradle”
然后在项目目录下的build.gradle头部进行接入:
apply from :“config.gradle”
在model下的gradle进行使用
compileSdk rootProject.ext.android.compileSdk
buildSrc管理gradle依赖
当你运行Gradle时,它会检查项目中是否存在一个名为buildSrc的目录。然后Gradle会自动编译并测试这段代码,并将其放入构建脚本的类路径中。您不需要提供任何进一步的操作提示。
在根目录下创建插件名为buildSrc的文件夹,然后再buildSrc文件下面创建一个build.gradle.kts,里面写
plugins {
‘kotlin-dsl
’
}
repositories {
jcenter()
}
然后创建一个插件类存放你要设置的全局配置的版本号,和一些共用的依赖库,这样就可以了