API 文档 | Gradle |
---|
表示 Gradle 的一次调用。
你可以通过调用 Project.getGradle()
获取一个 Gradle
实例。
属性 | 描述 |
extensions | 扩展容器。 |
gradle | 返回此 |
gradleHomeDir | Gradle 主目录(如果存在)。此目录是包含执行此构建的 Gradle 发行版的目录。 |
gradleUserHomeDir | Gradle 用户主目录。此目录用于缓存下载的资源、已编译的构建脚本等。 |
gradleVersion | 当前 Gradle 版本。 |
includedBuilds | 此构建包含的构建。 |
parent | 此构建的父构建(如果存在)。 |
pluginManager | 此插件感知对象的插件管理器。 |
plugins | 已应用于此对象的插件容器。 |
rootProject | 此构建的根项目。 |
startParameter | 用于启动此构建的 |
taskGraph | 此构建的 |
方法 | 描述 |
addBuildListener(buildListener) | 为此构建实例添加一个 |
addListener(listener) | 为此构建添加给定的侦听器。侦听器可以实现以下任意给定的侦听器接口 |
addProjectEvaluationListener(listener) | 为此构建添加一个侦听器,以便在评估项目时接收通知。 |
afterProject(closure) | 添加一个闭包,以便在项目评估后立即调用。项目作为第一个参数传递给闭包。项目评估失败(如果存在)作为第二个参数传递。这两个参数都是可选的。 |
afterProject(action) | 添加一个动作,以便在项目评估后立即调用。 |
allprojects(action) | 添加一个动作,以便针对此构建的所有项目执行。该动作会立即针对所有已可用的项目执行。它也会在后续项目添加到此构建时执行。 |
apply(closure) | 应用零个或多个插件或脚本。 |
apply(options) | 应用一个插件或脚本,使用作为 map 提供的给定选项。如果插件已应用,则不执行任何操作。 |
apply(action) | 应用零个或多个插件或脚本。 |
beforeProject(closure) | 添加一个闭包,以便在项目评估前立即调用。项目作为参数传递给闭包。 |
beforeProject(action) | 添加一个动作,以便在项目评估前立即调用。 |
beforeSettings(closure) | 添加一个动作,以便在加载和评估构建设置之前调用。 |
beforeSettings(action) | 添加一个动作,以便在加载和评估构建设置之前调用。 |
buildFinished(closure) | 已弃用 添加一个闭包,以便在构建完成时调用。所有选定的任务都已执行。一个 |
buildFinished(action) | 已弃用 添加一个动作,以便在构建完成时调用。所有选定的任务都已执行。 |
includedBuild(name) | 返回此构建中具有指定名称的包含构建。 |
projectsEvaluated(closure) | 添加一个闭包,以便在构建的所有项目评估完成后调用。项目对象已完全配置并准备好用于填充任务图。此 |
projectsEvaluated(action) | 添加一个动作,以便在构建的所有项目评估完成后调用。项目对象已完全配置并准备好用于填充任务图。 |
projectsLoaded(closure) | 添加一个闭包,以便在根据设置创建构建的项目时调用。没有任何项目被评估。此 |
projectsLoaded(action) | 添加一个动作,以便在根据设置创建构建的项目时调用。没有任何项目被评估。 |
removeListener(listener) | 从此构建中移除给定的侦听器。 |
removeProjectEvaluationListener(listener) | 从此构建中移除给定的侦听器。 |
rootProject(action) | 添加一个动作,以便针对此构建的根项目执行。如果根项目已可用,则立即执行该动作。否则,当根项目可用时执行该动作。 |
settingsEvaluated(closure) | 添加一个闭包,以便在加载和评估构建设置时调用。设置对象已完全配置并准备好用于加载构建项目。 |
settingsEvaluated(action) | 添加一个动作,以便在加载和评估构建设置时调用。设置对象已完全配置并准备好用于加载构建项目。 |
useLogger(logger) | 已弃用 使用给定的对象作为日志记录器。日志记录器对象可以实现 |
ExtensionContainer
extensions
(只读)
扩展容器。
Gradle
gradle
(只读)
返回此 Gradle
实例。此方法在初始化脚本中非常有用,用于显式访问 Gradle 属性和方法。例如,使用 gradle.parent
比使用 parent
更能表达你的意图。此属性还允许你从属性可能被隐藏的作用域访问 Gradle 属性,例如,从方法或闭包中访问。
File
gradleHomeDir
(只读)
Gradle 主目录(如果存在)。此目录是包含执行此构建的 Gradle 发行版的目录。
使用“Gradle Daemon”时,这可能与启动构建时使用的 Gradle 发行版不同。如果存在一个被认为是兼容的现有守护进程(例如,具有所需的 JVM 特性),则可以使用此守护进程而不是启动新进程,并且它可能从不同的“gradle home”启动。但是,它保证是相同版本的 Gradle。有关 Gradle Daemon 的更多信息,请参阅用户手册。
File
gradleUserHomeDir
(只读)
Gradle 用户主目录。此目录用于缓存下载的资源、已编译的构建脚本等。
String
gradleVersion
(只读)
当前 Gradle 版本。
Collection
<IncludedBuild
>
includedBuilds
(只读)
Collection
<IncludedBuild
>此构建包含的构建。
Gradle
parent
(只读)
此构建的父构建(如果存在)。
PluginManager
pluginManager
(只读)
此插件感知对象的插件管理器。
PluginContainer
plugins
(只读)
已应用于此对象的插件容器。
虽然未弃用,但优先使用此接口或 PluginAware.getPluginManager()
的方法,而不是直接使用插件容器。
使用此接口或 PluginAware.getPluginManager()
上的 'apply' 方法之一来应用插件,而不是通过插件容器来应用。
使用 PluginManager.hasPlugin(java.lang.String)
或类似方法来查询插件的应用情况,而不是通过插件容器来查询。
Project
rootProject
(只读)
此构建的根项目。
StartParameter
startParameter
(只读)
用于启动此构建的 StartParameter
。
TaskExecutionGraph
taskGraph
(只读)
此构建的 TaskExecutionGraph
。
void
addBuildListener
(BuildListener
buildListener)
为此构建实例添加一个 BuildListener
。侦听器将在构建执行期间发生事件时收到通知。
void
addListener
(Object
listener)
为此构建添加给定的侦听器。侦听器可以实现以下任意给定的侦听器接口
以下侦听器类型可以使用,但在启用配置缓存时不受支持。它们的使用已被弃用,在未来 Gradle 版本中添加这些类型的侦听器将成为错误
ProjectEvaluationListener
addProjectEvaluationListener
(ProjectEvaluationListener
listener)
为此构建添加一个侦听器,以便在评估项目时接收通知。
void
afterProject
(Closure
closure)
添加一个闭包,以便在项目评估后立即调用。项目作为第一个参数传递给闭包。项目评估失败(如果存在)作为第二个参数传递。这两个参数都是可选的。
添加一个动作,以便针对此构建的所有项目执行。该动作会立即针对所有已可用的项目执行。它也会在后续项目添加到此构建时执行。
void
apply
(Closure
closure)
应用零个或多个插件或脚本。
给定的闭包用于配置一个 ObjectConfigurationAction
,它“构建”了插件应用。
此方法与 PluginAware.apply(java.util.Map)
不同之处在于,它允许多次调用配置动作的方法。
应用一个插件或脚本,使用作为 map 提供的给定选项。如果插件已应用,则不执行任何操作。
给定的 map 作为一系列方法调用应用于新创建的 ObjectConfigurationAction
。也就是说,map 中的每个键都应是 ObjectConfigurationAction
的方法名,而对应的值应是该方法兼容的参数。
以下选项可用
from
:要应用的脚本。接受Project.uri(java.lang.Object)
支持的任何路径。plugin
:要应用的插件的 id 或实现类。to
:目标委托对象或对象。默认是此插件感知对象。使用此选项可以配置除此对象以外的对象。
void
apply
(Action
<? super ObjectConfigurationAction
>
action)
Action
<? super ObjectConfigurationAction
>应用零个或多个插件或脚本。
给定的闭包用于配置一个 ObjectConfigurationAction
,它“构建”了插件应用。
此方法与 PluginAware.apply(java.util.Map)
不同之处在于,它允许多次调用配置动作的方法。
void
beforeProject
(Closure
closure)
添加一个闭包,以便在项目评估前立即调用。项目作为参数传递给闭包。
void
beforeSettings
(Closure
<?>
closure)
Closure
<?>添加一个动作,以便在加载和评估构建设置之前调用。
void
buildFinished
(Closure
closure)
注意:此方法已被弃用,并将在下一个主要版本的 Gradle 中移除。
添加一个闭包,以便在构建完成时调用。所有选定的任务都已执行。一个 BuildResult
实例作为参数传递给闭包。
void
buildFinished
(Action
<? super BuildResult
>
action)
Action
<? super BuildResult
>注意:此方法已被弃用,并将在下一个主要版本的 Gradle 中移除。
添加一个动作,以便在构建完成时调用。所有选定的任务都已执行。
IncludedBuild
includedBuild
(String
name)
返回此构建中具有指定名称的包含构建。
void
projectsEvaluated
(Closure
closure)
添加一个闭包,以便在构建的所有项目评估完成后调用。项目对象已完全配置并准备好用于填充任务图。此 Gradle
实例作为参数传递给闭包。
void
projectsLoaded
(Closure
closure)
添加一个闭包,以便在根据设置创建构建的项目时调用。没有任何项目被评估。此 Gradle
实例作为参数传递给闭包。
一个在 projectsLoaded 中进行挂钩以从初始化脚本配置构建脚本类路径的示例。
//init.gradle gradle.projectsLoaded { rootProject.buildscript { repositories { //... } dependencies { //... } } }
void
removeListener
(Object
listener)
从此构建中移除给定的侦听器。
从此构建中移除给定的侦听器。
从此构建中移除给定的侦听器。
void
removeProjectEvaluationListener
(ProjectEvaluationListener
listener)
添加一个动作,以便针对此构建的根项目执行。如果根项目已可用,则立即执行该动作。否则,当根项目可用时执行该动作。
添加一个闭包,以便在加载和评估构建设置时调用。设置对象已完全配置并准备好用于加载构建项目。Settings
对象作为参数传递给闭包。
void
settingsEvaluated
(Closure
closure)
添加一个动作,以便在加载和评估构建设置时调用。设置对象已完全配置并准备好用于加载构建项目。
void
useLogger
(Object
logger)
注意:此方法已被弃用,并将在下一个主要版本的 Gradle 中移除。
使用给定的对象作为日志记录器。日志记录器对象可以实现 Gradle.addListener(java.lang.Object)
支持的任何侦听器接口。
每个监听器接口都恰好关联一个日志记录器。当您使用给定监听器类型的日志记录器调用此方法时,新的日志记录器将替换当前与该监听器类型关联的日志记录器。这使您可以选择性地将 Gradle 提供的标准日志记录替换为您自己的实现,用于特定类型的事件。