Gradle构建的流程(gradle的生命周期)

刚过了春节回来颓废了十几天,感觉自己啥都不会了,赶紧学点东西充实一下自己,哈哈
学完之后怕自己记不住后面忘掉,在这里记录一下,废话不多说开整...

一共分为三步:

1.初始化阶段

大概就是gradle需要收集本次构建的工程和子工程,增加层次结构并且都为每个工程创建project实例(和这个关系最大的就是setting.gradle文件)

2.配置阶段
这个阶段就是去执行各个工程下面的build.gradle文件

3.执行阶段

主要就是执行在第二阶段生成的任务依赖图

我们需要如何证明这些?
打开一个工程,找到根目录下的setting.gradle文件

gradle自带有生命周期的的代码

gradle.addBuildListener(new BuildListener() {
    @Override
    void settingsEvaluated(Settings settings) {
        println("[left-cycle]初始化阶段已经完成")
    }

    @Override
    void projectsEvaluated(Gradle gradle) {
        println("[left-cycle]配置阶段已经完成")
    }

    @Override
    void buildFinished(BuildResult buildResult) {
        println("[left-cycle]工程构建结束")
    }
    @Override
    void buildStarted(Gradle gradle) {

    }
    @Override
    void projectsLoaded(Gradle gradle) {

    }
})

首先证明第一点我们再打印一条日志

 证明第二点我们在app目录下的build.gradle中再添加一个日志

 此时我们使用命令执行一下

 可以看到第一阶段,确实是先执行了setting中的代码,当setting中的代码执行完毕,就是初始阶段完成,开始走第二阶段,执行了app下面的build.gradle中的代码然后配置阶段就结束了

那么第三阶段?

我们需要创建一个任务来证明

 然后再次执行一次gradle命令走一遍流程

可以看到第三点是再配置阶段完成之后才会去执行

我个人写博客是怕忘记自己学过的内容,特此记录一下

猜你喜欢

转载自blog.csdn.net/lwh1212/article/details/122865476