## 1.setter和getter语法
~~~
println project.buildDir
println getProject().getBuildDir()
project.buildDir = 'target'
getProject().setBuildDir('target')
task hello<<{
println 'Hello world'
println project.buildDir
}
~~~
执行gradle命令
~~~
/Users/qianhui/Documents/Developer/gradle_project/0110_1/build
/Users/qianhui/Documents/Developer/gradle_project/0110_1/build
Hello world
/Users/qianhui/Documents/Developer/gradle_project/0110_1/target
~~~
## 2.方法的调用
方法的调用可以带括号也可以不带。
~~~
test.systemProperty 'some.prop','value'
test.systemProperty('some.prop','value')
~~~
## 3.遍历
~~~
apply plugin:'java'
test.includes = ['org/gradle/api/**','org/gradle/internal/**']
List<String> list = new ArrayList<String>()
list.add('org/gradle/api**')
list.add('org/gradle/internal/**')
test.includes = list
Map<String,String> map = [key1:'value',key2:'value2']
~~~
## 4.将闭包作为方法的最后一个参数
~~~
repositories{
println "in a closure"
}
repositories(){
println "in a closure"
}
repositories({
println "in a closure"
})
~~~
在方法被调用的时候,其实可以用闭包语句来代替,因为方法其实也是执行闭包里的代码块。
## 5.代理闭包
每一个闭包都有可以代理对象,你可以通过该代理对象进行某些属性的设置,比如下面的dependencies任务的代理对象delegate。可以设置该任务的testCompile属性。
~~~
dependencies {
assert delegate == project.dependencies
testCompile('junit:junit:4.11')
delegate.testCompile('junit:junit:4.11')
}
~~~
- 前言
- gradle学习(1)-helloworld
- gradle学习(2)-基础语法
- gradle学习(3)-基础认识
- gradle学习(4)-构建java项目
- gradle学习(5)-创建eclipse项目
- gradle学习(6)-依赖管理
- gradle学习(7)-groovy
- gradle学习(8)-gradle的命令行
- gradle学习(9)-获取build相关信息
- gradle学习(10)-gui
- gradle学习(11)-编写构建脚本
- gradle学习(12)-groovy一些基础语法
- gradle学习(13)-有的没的
- gradle学习(14)-任务
- gradle学习(15)-任务
- gradle学习(16)-操作文件
- gradle学习(17)-被合并的ant
- gradle学习(18)-ant的属性
- gradle学习(19)-log系统
- gradle学习(20)-详解java插件
- gradle学习(21)-在eclipse中构建java项目
- gradle复习(1)-2种定义任务方式的区别
- gradle复习(2)-eclipse中添加依赖jar包
- gradle复习(3)-在gradle项目中使用TestNG
- gradle复习(4)-Cannot find System Java Compiler
- gradle复习(5)-Test remote debug
- gradle复习(6)-深入Jacoco
- gradle复习(7)-深入Jacoco
- gradle复习(8)-Task中行为
- gradle学习(22)-Sonar
- gradle学习(23)-Sonar runner