Gradle用户指南(2)-基本命令

时间:2021-10-06 14:43:16

1.定义任务


使用task 关键字来定义gradle 任务

例:创建一个 build.gradle 命名的文件:

build.gradle

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

命令行切换到包含 build.gradle 文件的目录,执行 gradle -q hello

Gradle用户指南(2)-基本命令

输出为:

> gradle -q hello
Hello world!

PS:命令行加中 -q 的作用

q 是 quiet 的简写,意思是要安静、干净的输出。如果不加 -q 则会输出日志。详见日志,下面是对比

Gradle用户指南(2)-基本命令

还可以使用更简便的定义方式:

build.gradle

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

结果与doLast一致。

2.转换输出为大写


build.gradle

    task upper << {
String someString = 'mY_nAmE'
println "Original: " + someString
println "Upper case: " + someString.toUpperCase()
}

执行 gradle -q upper 输出

> gradle -q upper
Original: mY_nAmE
Upper case: MY_NAME

3.循环执行任务


build.gradle

    task count << {
.times { print "$it " }
}
 > gradle -q count
       

4.依赖(可以声明task与其它task的依赖)


build.gradle

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

执行 gradle -q intro 输出

 > gradle -q intro
Hello world!
I'm Gradle

5.创建动态task任务


build.gradle

    .times { counter ->
task "task$counter" << {
println "I'm task number $counter"
}
}

执行 gradle -q task1 输出

> gradle -q task1
I'm task number 1

6.快捷符号


build.gradle

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

执行 gradle -q hello 输出

> gradle -q hello
Hello Venus
Hello Earth
Hello Mars
Hello Jupiter

7.定义默认执行任务


build.gradle

    defaultTasks 'clean', 'run'

    task clean << {
println 'Default Cleaning!'
} task run << {
println 'Default Running!'
} task other << {
println "I'm not a default task!"
}

执行 gradle -q 输出

> gradle -q
Default Cleaning!
Default Running!