Gradle task简单使用
来源:互联网 发布:网络上砌砖的美女 编辑:程序博客网 时间:2024/06/05 16:14
还望支持个人博客站:http://www.enjoytoday.cn
task是什么
task是gradle构建脚本的最小运行单元,我们通过在gradle脚本中创建task任务,以期完成某个特定的功能,task在build.gradle中定义实现,task本身作为一个单独的运行单元,在编译时通过执行gradle task运行或者通过task之间的依赖运行。
如何定义task
task定义的方法很简单,创建的方式主要为两种:一种迭代声明task任务以及doLast,doFirst方法添加可执行代码;一种是通过 “<<” 快捷创建task任务,闭合执行任务代码。但不仅限于这两种,如下,为两种创建的简单代码格式:
//迭代创建task A{ doLast{ println "this is task A." }}//可执行的简略创建方式task B << { println "this is task B"}运行结果如下:caihaifei@hfcai:$ gradle A:Athis is task A.BUILD SUCCESSFULTotal time: 0.883 secscaihaifei@hfcai:$ gradle -q Bthis is task B
如上所示,直接通过gradle [-q] A(创建的任务名),即可执行查看运行结果。
task之间的依赖
task 可以通过dependsOn实现task任务间的依赖,可以选择直接在定义task时或者定义结束后添加依赖说明,定义依赖根据依赖声明的位置的前后,依赖说明写法略有不同,格式如下所示:
task A{ doLast{ println "this is task A." }}task B << { println "this is task B"}B.dependsOn('E')task C(dependsOn: B) << { println "this is task C"}task D(dependsOn: 'E') <<{ println "this is task D."}task E << { println "this is task E"}A.dependsOn(B)
结果验证可以通过运行task A 、task B 、task C、task D查看结果,结果显示如下:
caihaifei@hfcai:$ gradle -q Athis is task Ethis is task Bthis is task A.caihaifei@hfcai:$ gradle -q Bthis is task Ethis is task Bcaihaifei@hfcai:$ gradle -q Cthis is task Ethis is task Bthis is task Ccaihaifei@hfcai:$ gradle -q Dthis is task Ethis is task D.
task的执行方法
task的执行方法如上所是,已经介绍了一些,我们可以通过gradle指定执行task,也可以通过依赖于其他任务而在其他任务执行前执行,除此之外,我们还可以通过在脚本中指定默认执行任务,可以直接通过gradle执行,使用很简单,在脚本开头添加如下格式代码:
defaultTasks 'A','C'
执行方法以及结果如下:
caihaifei@hfcai:~$ gradle -qthis is task Ethis is task Bthis is task A.this is task C
更多gradle介绍请查看:http://www.enjoytoday.cn/categorys/Gradle
阅读全文
2 0
- Gradle task简单使用
- Gradle Task的使用
- Gradle 使用指南 -- Gradle Task
- Gradle简单使用
- gradle简单使用
- gradle的简单使用
- task scheduler 的简单使用
- 从零开始学习Gradle之二---如何使用Task
- 从零开始学习Gradle之二---如何使用Task
- Gradle 第二讲 之 创建task与变量的使用
- Gradle基本使用(2):基本概念与Task
- Gradle安装与简单使用
- Gradle使用的简单了解
- configuring gradle test task
- Gradle 中的 task 依赖
- android gradle task dependence
- Gradle Task基本知识
- Gradle task 命令
- HDOJ 1312 Red and Black (简单dfs)
- Android Studio库Module引用aar文件
- redis集群搭建(同机器、不同机器搭建)
- MySQL存储引擎--MyISAM与InnoDB区别
- c++11——move/forward
- Gradle task简单使用
- 状态模式【State Pattern】
- 2017年上半年软件设计师考试真题及答案(上午+下午)免费
- ThreadPoolExecutor源码阅读
- Lock和synchronized比较详解
- 接口测试整理
- 正则表达式 Exel单元格
- sql 设置主键
- ip地址 子网掩码 默认网关的联系