看懂Gradle脚本(1)- Groovy语言的Map语法糖

apply plugin: 'java'  
  • groovy 中行尾的分号是可选的
  • 字面量
    Java只能用双引号定义字符串字面量,Groovy中 既可以用双引号,也可以用单引号。区别是,用双引号定义的字符串可以插值,如:
def pi = 3.14  
def str = "pi is ${pi}"  

Java语言只有基本类型、String和数组有字面量,如下所示:

boolean b = false;  
int i = 100;  
double d = 4.14;  
String s = "java";  
int[] arr = {1, 2, 3}; 

Groovy语言给Map添加了字面量,如下所示:

def langs = ['C++':'Stroustrup', 'Java':'Gosling', 'Lisp':'McCarthy']  

语法像是Java里的数组字面量,key和value用冒号分隔,pair之间用逗号分隔。另外,用这种语法创建出来的是java.util.LinkedHashMap实例。如果key是普通的字符串,还可以进一步省略掉引号,如下所示:

def langs = ['C++':'Stroustrup', Java:'Gosling', Lisp:'McCarthy']  
  • 方法调用的括号可以省略
    apply实际上是个方法,下面是补上括号后的脚本:
apply(plugin: 'java'); 
  • 如果传入方法的参数是Map,那么Map字面量可以省略方括号
    补上方括号以后,脚本看起来是这样:
apply([plugin: 'java']); 
  • 结论
    apply其实是个方法,接收一个Map类型的参数。

  • 举一反三
    有了上面的分析,看懂下面这段Gradle脚本应该是小菜一碟了:

testCompile group: 'junit', name: 'junit', version: '4.10'  

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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 由于项目需要用到 Groovy 语言,这两天对其进行了粗略的学习,本文是对学习做的一个简单总结,主要内容参考...
    简单的土豆阅读 189,291评论 12 201
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,234评论 19 139
  • Groovy :是一种动态语言。 1:这种语言比较有特点,它和 Java 一样,也运行于 Java 虚拟机中。简单...
    PeytonWu阅读 1,619评论 0 1
  • Groovy是一门基于JVM的动态语言,很多语法和Java类似。大部分Java代码也同时是合法的Groovy代码。...
    乐百川阅读 3,660评论 0 15
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,275评论 0 4