了解gradle多项目build.gradle执行顺序

时间:2016-06-02 16:40:30

标签: gradle build.gradle

我在下面的gradle多项目结构上做了一些实验

enter image description here

我在所有build.gradle&中添加了println。 settings.gradle文件以查看它们执行的顺序。我看到那个项目A - > build.gradle文件正在其子项目pA1-> build.gradle之后执行,如下面的输出中所示

enter image description here

我不明白为什么projectA-> build.gradle在其子项目之后执行?它应该在子项目之前不执行,就像root上的build.gradle文件一样。

项目Multi project sample上的位置

1 个答案:

答案 0 :(得分:0)

首先,在build.gradle文件中放置一条裸println行不会给出执行顺序。 println将在配置阶段调用,因此,如果您正在查看配置顺序。

如果要调查执行顺序,请为所有build.gradle文件添加具有相同名称的任务,可能是这样的:

task action << {
    println("In project: ${project.name}")
}

然后从根文件夹运行gradle action