关闭

时间:2015-01-09 09:49:24

标签: groovy gradle

来自the documentation, 13.5.5

  

当方法的最后一个参数是闭包时,你可以放置   方法调用后的闭包

好的,我试过了,但它并没有像我想象的那样完全正常工作。请考虑以下代码:

def repostiory_closure = {
    mavenCentral()
}

repositories{ //OK
    mavenCentral()
}

repositories(){ //OK
    mavenCentral()
}

repositories repostiory_closure //OK
repositories() repostiory_closure //compile-time error

因此我们可以在方法调用之后添加唯一的闭包文字,但是Closure类型的变量。是吗?

1 个答案:

答案 0 :(得分:2)

你需要做的是将闭包作为方法调用的参数,如下所示:

repositories(repostiory_closure)

因为最后一个参数是一个闭包,所以该方法可以像上面那样内联调用。