【Android Gradle 插件】Gradle 构建生命周期 ① ( 分析构建脚本 | 执行初始化配置 | 执行 Gradle 任务 | Project#beforeEvaluate 函数 )

Android Plugin DSL Reference 参考文档 :





一、Gradle 构建生命周期



org.gradle.api.Project 配置 ( build.gradle 根配置 ) 文档 : https://docs.gradle.org/current/javadoc/org/gradle/api/Project.html

org.gradle.api.initialization.Settings 配置 文档 : https://docs.gradle.org/current/javadoc/org/gradle/api/initialization/Settings.html


Gradle 构建生命周期 :

① 分析构建脚本 : 分析 Gradle 构建脚本 build.gradle , 生成构建脚本对应的 SettingsProject 类 ;

② 执行 初始化配置 ;

③ 执行 Gradle 任务 ;





二、Project#afterEvaluate 函数



Gradle 构建声明周期 是可以进行 Hook 的 , 在上一篇博客 【Android Gradle 插件】自定义 Gradle 任务 ⑯ ( 从任务容器 TaskContainer 中搜索 Gradle 任务 | 压缩 packageDebug 任务输出文件 ) 中使用的 Project#afterEvaluate 函数 就是在 ① 分析构建脚本② 执行 初始化配置 之间执行的方法 ;

// 在 Gradle 分析完成后执行
// 也就是生成了一系列的自带 Gradle 任务之后执行
afterEvaluate {
    
    
	// 执行 Gradle 分析完成之后的代码
}




三、Project#beforeEvaluate 函数



Project#afterEvaluate 函数 对应的是 Project#beforeEvaluate 函数 , 该函数是在 开始 进行 Gradle 分析构建脚本 之前 执行的 方法 , 函数原型如下 :

public interface Project extends Comparable<Project>, ExtensionAware, PluginAware {
    
    
    void beforeEvaluate(Closure var1);

    void afterEvaluate(Closure var1);
}

猜你喜欢

转载自blog.csdn.net/han1202012/article/details/127187274