1.定义任务
使用task 关键字来定义gradle 任务
例:创建一个 build.gradle
命名的文件:
build.gradle task hello {
doLast {
println 'Hello world!'
}
}
命令行切换到包含 build.gradle 文件的目录,执行 gradle -q hello
输出为:
> gradle -q hello
Hello world!
PS:命令行加中 -q
的作用
q 是 quiet 的简写,意思是要安静、干净的输出。如果不加 -q
则会输出日志。详见日志,下面是对比
还可以使用更简便的定义方式:
build.gradle task hello << {
println 'Hello world!'
}
结果与doLast一致。
2.转换输出为大写
build.gradle task upper << {
String someString = 'mY_nAmE'
println "Original: " + someString
println "Upper case: " + someString.toUpperCase()
}
执行 gradle -q upper
输出
> gradle -q upper
Original: mY_nAmE
Upper case: MY_NAME
3.循环执行任务
build.gradle task count << {
.times { print "$it " }
}
> gradle -q count
4.依赖(可以声明task与其它task的依赖)
build.gradle task hello << {
println 'Hello world!'
}
task intro(dependsOn: hello) << {
println "I'm Gradle"
}
执行 gradle -q intro
输出
> gradle -q intro
Hello world!
I'm Gradle
5.创建动态task任务
build.gradle .times { counter ->
task "task$counter" << {
println "I'm task number $counter"
}
}
执行 gradle -q task1
输出
> gradle -q task1
I'm task number 1
6.快捷符号
build.gradle task hello << {
println 'Hello Earth'
}
hello.doFirst {
println 'Hello Venus'
}
hello.doLast {
println 'Hello Mars'
}
hello << {
println 'Hello Jupiter'
}
执行 gradle -q hello
输出
> gradle -q hello
Hello Venus
Hello Earth
Hello Mars
Hello Jupiter
7.定义默认执行任务
build.gradle defaultTasks 'clean', 'run' task clean << {
println 'Default Cleaning!'
} task run << {
println 'Default Running!'
} task other << {
println "I'm not a default task!"
}
执行 gradle -q
输出
> gradle -q
Default Cleaning!
Default Running!