No1:

设置文件默认名是setting.gradle,放在根目录下,大多数作用都是为了配置子工程

No2:

一个Project包含很多个Task。Task就是一个操作,一个原子性的操作。其实它是Project对象的一个函数

No3:

task customTask1{
doFirst{
println 'customTask1:doFirst'
}
doLast{
println 'customTask1:doLast'
}
} tasks.create("customTask2"){
doFirst{
println 'customTask2:doFirst'
}
doLast{
println 'customTask2:doLast'
}
}

结果

说明这两个任务是一样的

No4:

依赖:用于控制执行顺序

task ex35Hello<<{
println 'hello'
} task ex35Main(dependsOn:ex35Hello){
doLast{
println 'main'
}
}

结果

No5:

多重依赖

task ex35Hello<<{
println 'hello'
} task ex35World<<{
println 'world'
} task ex35MultiTask{
dependsOn ex35Hello,ex35World
doLast{
print 'multiTask'
}
}

结果

注:方法名后面的<<可以不要

No6:

交互

task ex36Hello<<{
println 'dowLast1'
} ex36Hello.doFirst{
println 'dowFirst'
} ex36Hello.doLast{
println project.hasProperty('ex36Hello')
println 'dowLast2'
}

结果

Project在创建该任务的时候,同时把该任务对应的任务名注册为Project的一个属性,类型是Task

project.hasProperty('ex36Hello')用来判断是否有这个属性

No7:

自定义属性:ext

//自定义一个Project的属性
ext.age = 18 //通过代码块同时自定义多个属性
ext{
phone = 13342342
address = ''
} task ex37CustomProperty<<{
println "年龄是:${age}"
println "电话是:${phone}"
println "地址是:${address}"
}

结果

No8:

SourceSet

apply plugin :"java"
ext.age = 18
ext{
phone=13123
address=''
} sourceSets.all{
ext.resourcesDir=null
} sourceSets{
main{
resourcesDir='main/res'
}
test{
resourcesDir='test/res'
}
} task ex38CustomProperty<<{
println "年龄是:${age}"
println "电话是:${phone}"
println "地址是:${address}" sourceSets.each{
println "${it.name}的resourceDir是:${it.resourcesDir}"
}
}

结果

最新文章

  1. 什么是智能扫描开单打印进销存POS?安卓工业手持PDA设备上的POS销售开单,现场打印打票,用扫描枪太方便了
  2. vijos 1028 LIS *
  3. tortoisesvn的安装与使用
  4. U盘美化(更换U盘logo和页面背景软件)
  5. hadoop 异常 datanode未启动
  6. 【转】android蓝牙开发---与蓝牙模块进行通信--不错
  7. C-冒泡排序,选择排序,数组
  8. 使apache解析域名到目录的方法
  9. 腾讯应用开发3006 : name lookup timed out 错误
  10. 表达式求值(二叉树方法/C++语言描述)(一)
  11. (PAT)L2-012 关于堆的判断 (最小堆)
  12. vue 项目 使用sass
  13. 『TensorFlow』网络操作API_中_损失函数及分类器
  14. html迪士尼网页实现代码
  15. C#基础知识回顾-- 反射(4)
  16. 《A Structured Self-Attentive Sentence Embedding》(注意力机制)
  17. 《代码大全》的作者Steve McConnell
  18. Linux学习笔记02—磁盘分区
  19. Web开发: servlet的session为null?
  20. 原生JS 实现元素排序

热门文章

  1. Linux 流量控制总结(TC)
  2. C++ vector 使用笔记
  3. 关于windows下的虚拟机Homestead在推送代码上github 步骤
  4. Android常用网络请求框架Volley Retrofit (okHttp)
  5. Jetson tk1 刷机教程
  6. 跟踪OceanLotus的新下载程序KerrDown
  7. [转]RJ45接口说明
  8. ubuntu cron 及 crontab 自动执行任务
  9. vuejs初学入门环境搭建
  10. MySQL 数据类型(转)