Gradle User Guide(1)

Projects 和 tasks

1、 Project和task是Gradle的两个基础概念,每次Gradle构建由一个或多个project构成,每个project由一个或多个task构成。

2、Hello world
通过 gradle 命令运行一个Gradle构建,gradle命令会在当前目录下查找build.gradle 文件执行,build.gradle是一个编译配置脚本,具体定义了一个project和它的tasks

build.gradle

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

执行命令

> gradle -q hello
Hello world!

3、<< 符号
定义task的时候可以使用<< `简写

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

看与上面的区别,其实<< 表示了doLast。

4、Build script使用Groovy语法编写

5、一个task可以关联到另一个task上执行

task hello << {
    println 'Hello world!'
}
task intro(dependsOn: hello) << {
    println "I'm Gradle"
}
> gradle -q intro
Hello world!
I'm Gradle

6、task可以动态创建

4.times { counter ->
    task "task$counter" << {
        println "I'm task number $counter"
    }
}
> gradle -q task1
I'm task number 1

这里涉及到了构建的生命周期,执行gradle -q task1 的时候,首先会解析build.gradle文件,生成相应的task,这里也就生成了task1-task4,四个task,然后根据命令找到task1执行。

7、doFirst 和 doLast

一个task有一个action列表,doFirst会在列表前添加action,doLast在列表后添加,它们都可以被添加多次,执行顺序由脚本中的定义决定。

task hello << {
    println 'Hello Earth'
}
hello.doFirst {
    println 'Hello Venus'
}
hello.doLast {
    println 'Hello Mars'
}
hello << {
    println 'Hello Jupiter'
}
> gradle -q hello
Hello Venus
Hello Earth
Hello Mars
Hello Jupiter

8、Default tasks
如果命令行没有指定具体的任务,gradle会寻找默认任务,默认任务通过defaultTasks 指定

defaultTasks 'clean', 'run'

task clean << {
    println 'Default Cleaning!'
}

task run << {
    println 'Default Running!'
}

task other << {
    println "I'm not a default task!"
}
> gradle -q
Default Cleaning!
Default Running!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值