Gradle 的 withType 用法

Gradle's withType usage

一样,我在理解withType用法时遇到问题,例如

tasks.withType(JavaCompile) {
    options.compilerArgs.add("-Xbootclasspath/p:${file}")
}

... 与他不同的是,我发现官方文档一如既往地完全没有用。你能告诉我 withType 到底是做什么的吗?

它会找到当前项目中给定类型的所有已定义任务。您可以让多个任务以不同的方式命名和配置,但共享相同的类型(和实现细节)。

例如有一种任务类型 JavaCompile 然后作为标准 Java 项目中的两个任务添加:compileJavatestCompileJava。 在 Gradle docs 中可以找到更多内容。您询问的语法将使您有可能为所有此类任务设置通用配置。