groovy - 任务方法的gradle参数顺序

标签 groovy gradle

实际上,这是一个更普遍的问题。
我正在为gradle项目编写一个自定义插件,它引入了一个新任务。由于这是一个非常简单的任务,因此我不想编写新的任务类。为此,我使用项目中的“任务”方法来创建它:

project.task('myTask', dependsOn: 'build') << {
    println 'Here I come!'
}

现在,我很困惑此方法调用的具体参数列表。小肠我会说是task(String, Map, Closure)。但是实际上,没有任何方法可以使此签名过载。只有task(Map, String, Closure)方法。

Groovy是否真的重新排列了实际参数,还是我在这里错过了一些东西?

最佳答案

使用的重载为task(Map, String)。 (<<Task的缩写运算符,是Task#doLast的重载运算符。)Groovy编译器将已命名的参数替换为第一参数映射。

关于groovy - 任务方法的gradle参数顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25640339/

相关文章:

java - @Version 在 Spring mongo 中没有增加

java - 在 SoapUI Groovy 中调用 Java 类

android - Android Cordova构建问题

android - connectedAndroidTest 和 release 构建类型

java - 如何将 Espresso 2(用于测试)与扩展应用程序(android.app.Application)一起使用?

maven - 将任意目录分配给Maven/Gradle中的软件包

groovy - 为什么在这里不将类名大写会导致编译器错误?

java - 如何使最简单的 servlet 过滤器尊重设置的字符编码

java - 如何在Java中运行groovy

spring - Gradle有条件地运行多个 Spring 项目