运行 gradle 在自定义任务的子项目中构建(测试)

Run gradle build(test) in subprojects in a custom task

如何在build.gradle.kts中运行任务构建或测试自定义任务中的一些子项目? 例如,我有子模块:firstA、secondA、thirdA。我只想 运行 为 firstA 和 thirdA 构建自定义任务。

settings.gradle.kts

rootProject.name = "myProject"
include(
  "modules:firstA",
  "modules:secondA",
  "modules:thirdA"
)

在根项目中注册一个gradle任务,然后遍历子项目并按名称过滤它们,然后根据子项目的测试任务确定任务。

示例:

tasks.register("mytest") {
    dependsOn(subprojects.mapNotNull {
        when (it.name) {
            "firstA", "thirdA" -> it.tasks.findByName("test")
            else -> null
        }
    })
}