gradle教程(一)
【摘要】 Gradle是用Groovy语言编写的。 gradle命令会在当前目录下找到build.gradle文件。build.gradle文件被称为一个构建脚本, 1、创建名为build.gradle的文件 2、在build.gradle文件中加入如下内容: 定义一个名为hello的任务,入面加入一个Groovy写的动作。
task hello{ doLast{ printl...
Gradle是用Groovy语言编写的。
gradle命令会在当前目录下找到build.gradle文件。build.gradle文件被称为一个构建脚本,
1、创建名为build.gradle的文件
2、在build.gradle文件中加入如下内容:
定义一个名为hello的任务,入面加入一个Groovy写的动作。
task hello{ doLast{ println 'Hello world' }
}
- 1
- 2
- 3
- 4
- 5
上面的代码还可简写成:
task hello << {
println 'Hello world!'
}
- 1
- 2
- 3
“<<”是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
- 1
- 2
- 3
- 4
- 5
其他例子
- 添加一个依赖项,依赖项可以不存在。
task taskX(dependsOn:'taskY'){ doLast{ println 'taskX' }
}
task taskY{ doLast{ println 'taskY' }
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
运行结果:
~/Desktop/gr$ gradle -a taskX
> Task :taskY
taskY
> Task :taskX
taskX
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 动态创建任务
4.times { counter ->
task "task$counter"{
doLast{ println "I'm task number $counter"
}
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
运行结果:
~/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
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- Gradle允许你为你的构建定义一个或多个默认任务
defaultTasks 'clean','run'
task clean { doLast{ println 'Default Cleaning!' }
}
task run { doLast{ println 'Default Running!' }
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
运行结果:
~/Desktop/gr$ gradle -a
> Task :clean
Default Cleaning!
> Task :run
Default Running!
BUILD SUCCESSFUL in 0s
2 actionable tasks: 2 executed
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
在一个多项目构建中,每个子项目能够有它自己指定的默认任务。如果一个子任务不指定默认任务,将会使用父项目中已定义的默认任务。
- 不同的构建结果取决于选择的构建任务
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' }
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
运行结果:
~/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
- 1
- 2
- 3
- 4
- 5
- 6
- 7
谢谢阅读
文章来源: blog.csdn.net,作者:WongKyunban,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/weixin_40763897/article/details/103517493
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)