对 Gradle 脚本好奇很久了,这次终于抽时间简单看了一下,然后使用它配置了一个最简单的 SpringBoot 环境。
安装就略去不表了,使用包管理器或者去官网下载源码、二进制包都可以,只要保证能正常执行 gradle 命令就好了。
使用 Gradle 脚本的第一步,你要知道 Groovy 语言,因为 Gradle 脚本是使用 Groovy 语言编写的。
我个人认为这是一个挺冷门的语言,至少我以前没见过它。这次也只是简单了解一下,并没有深入,不过我倒是觉得 Groovy 的语法和 Kotlin 有几分相似。
网上也有一些介绍 Gradle 的基本概念的,这里也再重复一下。
首先,Gradle 使用 build.gradle
作为其配置文件。还有两个配置文件分别是 setting.gradle
和 gradle.properties
,不过我们这里的最简环境并没有用到。
所以,这里我们只需要编写 build.gradle,在这个文件中,有一个 task 的概念,顾名思义,它就是 gradle 脚本中需要执行的一个任务。有如下代码:
task A { doLast { println "Hello A" } } task B << { println "Hello B" } task C(dependsOn: B) << { println "Hello C" }
使用如下方式执行:
[root@VM_225_137_centos springboot]# gradle -q A Hello A [root@VM_225_137_centos springboot]# gradle -q B Hello B [root@VM_225_137_centos springboot]# gradle -q C Hello B Hello C
先解释一个那个 -q
参数,就是 --quiet
的意思,和很多命令的 -q
参数一样,就是告诉 gradle 别 BB 了,除了错误以为的信息就不用显示了。
接下来你应该也能猜到,使用 gradle A
就是执行 A 任务, gradle B
就是执行 B 任务了。
你可能发现 task A 使用了 doLast
,而 task B 使用了 <<
,其实他们的作用是一样的,后者是前者的简写而已。
那么,执行 task C 为什么除了输出 Hello C 之外,还会先输出 Hello B 呢?当然是这样了,因为 task C 依赖(dependsOn) task B 嘛。
你可以使用 gradle tasks
命令查看 gradle 还可以执行哪些 task。
上面只是随便简单介绍一下 build.gradle 的写法,更多请百度。