gpt4 book ai didi

Gradle 多项目 - 只执行一次 root 任务

转载 作者:行者123 更新时间:2023-12-04 20:03:04 26 4
gpt4 key购买 nike

我正在使用以下项目结构
项目

---子项目1

---子项目2

---子项目3

|构建.gradle

|设置.gradle

子项目 2 依赖于子项目 1

子项目 3 依赖于子项目 2

对于所有子项目,我需要有任务“构建”,这将为每个项目自定义。但是一些初始化任务(所有子项目都一样)必须在“构建”之前执行。事情是 - 这个初始化任务必须在构建过程中执行一次并且只能执行一次,无论我正在构建什么 - 根项目或任何子项目。
例如,如果我构建 Subproejct3,序列必须如下:
在里面
构建子项目1
构建子项目2
构建子项目3

我试图在根项目 build.gradle 中为“build”定义“doFirst”,并将“init”代码放入其中。但在这种情况下,“init”代码在每次“构建”之前执行。
我试图为每个“构建”定义对 root 的依赖,但面临与以前相同的问题。

最佳答案

这对于 Gradle 来说非常简单。定义您的 init任务(可能在根项目中)和自定义 build子项目中的任务依赖于这个 init 之类的
build.dependsOn ':init'
更多详情请见 http://www.gradle.org/docs/current/userguide/tutorial_using_tasks.html

顺便说一句:当构建开始时,每个任务只能执行一次,因此您似乎已多次使用 doFirst() 添加任务操作或将其添加到已执行的多个任务中。

关于Gradle 多项目 - 只执行一次 root 任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28050967/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com