一、Gradle 构建脚本结构
在 工程根目录 中 , 创建 common.gradle 构建脚本 , 所有的 核心配置 都放置在该脚本中 , 在所有的模块中的 build.gradle 构建脚本 中 都使用如下 apply from: 代码 , 导入 common.gradle 构建脚本 到 模块中的 build.gradle 脚本中 ;
/**
* 此处直接导入 common.gradle 构建脚本
*/
apply from: "${rootProject.rootDir}/common.gradle"
在 common.gradle 构建脚本 中调用了 dependencies 方法 , 设置了依赖 ;
同时在 模块中的 build.gradle 构建脚本中 , 还可以 继续调用 dependencies 方法 , 在已设置依赖的基础上 , 追加新的依赖 , 如下脚本所示 :
/**
* 此处直接导入 common.gradle 构建脚本
*/
apply from: "${rootProject.rootDir}/common.gradle"
/**
* dependencies 闭包配置可以调用多次
*/
dependencies {
// 注意此处 api 需要进行依赖传递 , 在其它模块中也需要调用 base 模块中的内容
api project(':base')
}
注意上述代码中的 api 依赖配置 , 需要进行 依赖传递 , 一般进行底层开发 , 自己开发底层库时才需要传递依赖 , 使用 api 依赖配置会增加 Gradle 构建的时间 , 非必要不用 ;
上述 base 依赖库 , 在各个模块都需要调用到 , 因此做了依赖传递 , 也可以在每个模块中配置 implementation project(':base') 替代上述 api 类型的依赖 ;
绝大多数的导入依赖操作使用的是 implementation 配置 , 不进行依赖传递 ;