看懂Gradle脚本(2)- Groovy语言的闭包语法

repositories {  
    mavenCentral()  
}  
  • 闭包字面量
    闭包字面量看起来像Java里的 代码块:用一对儿花括号包起来。方法调用的圆括号可以省略,补上圆括号之后,脚本看起来是这样:
repositories({ 
    mavenCentral()  
})  
  • 如果闭包是方法的最后一个参数,那么闭包可以放在圆括号外面
repositories() { 
    mavenCentral()  
} 
  • 结论
    文章开头的脚本实际上是调用repositories方法,并且把一个闭包当做参数传入。

  • 举一反三
    下面这段脚本定义了一个Task,并且给它定义了一个Action,打印出一句话:

task 'myTask' {  
    doLast {  
        println 'hello world!'  
    }  
}  

下面是补上括号之后的脚本:

task('myTask', {  
    doLast({  
        println('hello world!')  
    })  
})  

这段脚本其实是调用Project的task方法,并且传入两个参数:一个是Task的名字,另外一个是闭包,用来配置Task(在这段脚本中,给Task添加了一个Action)。

原文地址:http://blog.csdn.net/zxhoo/article/details/29601675

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容