0
点赞
收藏
分享

微信扫一扫

gradle教程(一)


Gradle是用Groovy语言编写的。
gradle命令会在当前目录下找到build.gradle文件。build.gradle文件被称为一个构建脚本,
1、创建名为build.gradle的文件
2、在build.gradle文件中加入如下内容:
定义一个名为hello的任务,入面加入一个Groovy写的动作。

task hello{
doLast{
println 'Hello world'
}
}

上面的代码还可简写成:

task hello << {
println 'Hello world!'
}

“<<”是doLast和符号。

3、在build.gradle所在目录下,执行gradle -a hello命令:
这个命令会执行当前目录下的build.gradle里的hello任务。

~/Desktop/gr$ gradle -a hello
Starting a Gradle Daemon, 2 incompatible Daemons could not be reused, use --status for details

> Task :hello
Hello world

其他例子

  • 添加一个依赖项,依赖项可以不存在。

task taskX(dependsOn:'taskY'){
doLast{
println 'taskX'
}
}

task taskY{
doLast{
println 'taskY'
}
}

运行结果:

~/Desktop/gr$ gradle -a taskX

> Task :taskY
taskY

> Task :taskX
taskX

  • 动态创建任务

4.times { counter ->
task "task$counter"{
doLast{
println "I'm task number $counter"
}
}
}

运行结果:

~/Desktop/gr$ gradle -q task0
I'm task number 0
~/Desktop/gr$ gradle -q task1
I'm task number 1
~/Desktop/gr$ gradle -q task2
I'm task number 2
~/Desktop/gr$ gradle -q task3
I'm task number 3

  • Gradle允许你为你的构建定义一个或多个默认任务

defaultTasks 'clean','run'
task clean {
doLast{
println 'Default Cleaning!'
}
}
task run {
doLast{
println 'Default Running!'
}
}

运行结果:

~/Desktop/gr$ gradle -a

> Task :clean
Default Cleaning!

> Task :run
Default Running!

BUILD SUCCESSFUL in 0s
2 actionable tasks: 2

在一个多项目构建中,每个子项目能够有它自己指定的默认任务。如果一个子任务不指定默认任务,将会使用父项目中已定义的默认任务。

  • 不同的构建结果取决于选择的构建任务

task distribution{
doLast{
println "We build the zip with version=$version"
}
}
task release(dependsOn:'distribution'){
doLast{
println 'We release now'
}
}
task debug(dependsOn:'distribution'){
doLast{
println 'Debug now '
}
}

gradle.taskGraph.whenReady{ taskGraph ->
if(taskGraph.hasTask(release)){
version = '1.0'
}else{
version = '1.0-SNAPSHOT'
}
}

运行结果:

~/Desktop/gr$ gradle -q release
We build the zip with version=1.0
We release now
~/Desktop/gr$ gradle -q debug
We build the zip with version=1.0-SNAPSHOT
Debug now

谢谢阅读


举报

相关推荐

0 条评论