2. Gradle 构造基础

1.    Projects 和 Tasks

任何一个 Gradle 构建都是由一个或多个 projects 组成. 每个 project 包括许多可构建组成部分.  这完全取决于你要构建些什么. 一个 project 不必描述它只能进行构建操作. 它也可以部署你的应用或搭建你的环境.  Gradle 的 build-by-convention 可以让您来具体定义一个 project 到底该做什么. 

每个 project 都由多个 tasks 组成。每个 task 都代表了构建执行过程中的一个原子性操作。如编译,打包,生成 javadoc,发布到某个仓库等操作。

2.    Hello Wrold

用户可以通过在命令行运行 gradle 命令来执行构建, gradle 命令会从当前目录下寻找 build.gradle 文件来执行构建. build.gradle 文件为构建脚本.  build.gradle 文件被称为构建脚本.


第一个构建脚本

build.gradle

//定义了一个叫 hello 的 task.
task hello { 
    doLast {
        println 'Hello world!'
    }
}

然后在该文件所在目录执行 gradle -q hello

        * -q: 该参数用于控制 gradle 的日志级别, 可以保证只输出我们需要的内容. (可以尝试不加 -q, 然后看结果)


3.    通过 API 进行任务之间的通信 - 增加任务行为.

task hello << {
    println 'Hello Earth'
}
hello.doFirst {
    println 'Hello Venus'
}
hello.doLast {
    println 'Hello Mars'
}
hello << {
    println 'Hello Jupiter'
}

    *doFirst 和 doLast 可以进行多次调用. 他们分别被添加在任务的开头和结尾. 当任务开始执行时这些动作会按照既定顺序进行. 其中 << 操作符是 doLast 的简写.


4.    添加自定义属性

假设有一个叫做 myProperty 的属性, 可以用 ext.myProperty 的方式给 myProperty 一个初始值, 

task myTask {
    ext.myProperty = "myValue"
}
task printTaskProperties << {
    println myTask.myProperty
}


5.    定义默认任务

defaultTasks 'clean', 'run'

这里会直接调用 clean 和 run 的 task. 在多项目构建中, 每个子项目都可以指定单独的默认任务, 如果子项目进行指定将会调用父项目指定的默认任务.


此处只列出几个相对经典的构建基础.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值