Gradle 构建脚本
-
构建脚本
Gradle建立了一个脚本文件来处理两件事。一个是项目,另一个是任务。每个Gradle构建都代表一个或多个项目。项目代表JAR库或Web应用程序,或者它可能代表从其他项目产生的JAR组装而成的ZIP。简单来说,一个项目是由不同的任务组成的。任务是指构建执行的一项工作。一个任务可能是编译某些类,创建JAR,生成Javadoc或将一些存档发布到存储库。Gradle使用Groovy语言编写脚本。 -
编写构建脚本
Gradle提供了一种领域特定语言(DSL),用于描述构建。这使用Groovy语言使描述构建更加容易。Gradle的每个构建脚本都是使用UTF-8编码的,离线保存并命名为build.gradle。我们正在使用Groovy脚本描述任务和项目。您可以使用Gradle命令运行Gradle构建。该命令查找名为build.gradle的文件。看下面的示例,该示例代表一个打印scriptspoint的小脚本。将以下脚本复制并保存到名为build.gradle的文件中。该构建脚本定义了任务名称hello,该任务名称用于打印jc2182字符串。在命令提示符下执行以下命令。它执行上面的脚本。您应该执行此操作,将build.gradle文件存储在其中。输出:Gradle脚本主要使用两个实际对象,一个是项目对象,另一个是脚本对象。- 项目对象 - 每个脚本描述一个或多个项目。在执行过程中,此脚本将配置项目对象。您可以在构建脚本中调用委托给Project Object的某些方法并使用属性。
- 脚本对象 - Gradle将脚本代码分成实现脚本接口然后执行的类。这意味着脚本接口声明的所有属性和方法在脚本中都可用。
下表定义了标准项目属性的列表。所有这些属性在您的构建脚本中都可用。名称 类型 默认值 project Project Project 实例 name String 项目目录名称 path String 项目绝对路径 description String 项目描述 projectDir File 构建脚本的目录 buildDir File projectDir/build group Object Unspecified version Object Unspecified ant AntBuilder 一个AntBuilder 实例 -
Groovy基础
Gradle构建脚本使用完整的Groovy API。请看以下示例。以下示例说明有关将字符串转换为大写形式的信息。将以下给定的代码复制并保存到build.gradle文件中。在命令提示符下执行以下命令。它执行上面给定的脚本。您应该执行此操作,将build.gradle文件存储在其中。输出:下面的示例说明有关将隐式参数($it)的值打印4次的情况。将以下代码复制并保存到build.gradle文件中。在命令提示符下执行以下命令。它执行上面给定的脚本。您应该执行此操作,将build.gradle文件存储在其中。输出:Groovy语言提供了许多功能,其中一些重要功能将在下面讨论。 -
Groovy JDK方法
Groovy向标准Java类添加了许多有用的方法。例如,JDK的Iterable API实现了一个each()方法,该方法在Iterable接口的元素上进行迭代。将以下代码复制并保存到build.gradle文件中。在命令提示符下执行以下命令。它执行上面给定的脚本。您应该执行此操作,将build.gradle文件存储在其中。输出: -
属性存储器
您可以通过指定其引用来自动访问特定属性的相应getter和setter方法。以下代码段定义了buildDir属性的getter和setter方法的语法。 -
方法调用上的可选括号
Groovy在方法调用中包含一个特殊功能,即括号对于方法调用是可选的。此功能也适用于Gradle脚本。看一下以下语法。定义了一个调用test对象的systemProperty的方法。 -
闭包作为方法的最后一个参数
Gradle DSL在许多地方使用闭包。如果方法的最后一个参数是闭包,则可以将闭包放在方法调用之后。以下代码段定义了Closures用作repositories()方法参数的语法。 -
默认导入
Gradle自动将一组导入语句添加到Gradle脚本中。以下列表显示了默认的Gradle脚本导入包。