TaskContainer

API 文档TaskContainer

一个 TaskContainer 负责管理一组 Task 实例。

你可以通过调用 Project.getTasks() 获取 TaskContainer 实例,或在你的构建脚本中使用 tasks 属性。

属性

无属性

方法

方法描述
containerWithType(type)

创建一个常规容器,该容器包装多态容器,以呈现指定类型的所有元素。

create(name)
已废弃

创建一个给定名称的 Task 并将其添加到此容器。

create(name, configureClosure)
已废弃

创建一个给定名称的 Task 并将其添加到此容器。给定的 Closure 用于在任务通过此方法返回之前配置它。

create(name, type)
已废弃

创建一个给定名称和类型的 Task,并将其添加到此容器。

create(name, type, constructorArgs)
已废弃

创建一个给定名称和类型的 Task,将给定参数传递给带有 @Inject 注解的构造函数,并将其添加到此容器。传递给任务构造函数的所有值都不能为 null;否则将抛出 NullPointerException

create(name, type, configuration)
已废弃

创建一个给定名称和类型的 Task,使用给定的 action 配置它,并将其添加到此容器。

create(name, configuration)
已废弃

创建一个给定名称且类型为 DefaultTaskTask,使用给定的 action 配置它,并将其添加到此容器。

create(options)
已废弃

创建一个 Task 并将其添加到此容器。可以将创建选项的 Map 传递给此方法,以控制如何创建任务。以下选项可用:

create(options, configureClosure)
已废弃

创建一个 Task 并将其添加到此容器。可以将创建选项的 Map 传递给此方法,以控制如何创建任务。有关可用选项列表,请参阅 TaskContainer.create(java.util.Map)。给定的 Closure 用于在任务通过此方法返回之前配置它。

findByPath(path)

按路径定位任务。你可以提供任务名称、相对路径或绝对路径。相对路径相对于此容器的项目进行解释。如果给定路径不存在任务,则此方法返回 null。

getByName(name)

按名称定位对象,如果不存在此类对象则失败。

getByName(name, configureClosure)

按名称定位对象,如果不存在此类对象则失败。给定的配置 Closure 在对象通过此方法返回之前针对该对象执行。该对象作为其代理传递给 Closure。

getByName(name, configureAction)

按名称定位对象,如果不存在此类对象则失败。给定的配置 Action 在对象通过此方法返回之前针对该对象执行。

getByPath(path)

按路径定位任务。你可以提供任务名称、相对路径或绝对路径。相对路径相对于此容器的项目进行解释。如果给定路径不存在任务,则此方法抛出异常。

maybeCreate(name)

查找具有给定名称的项,如果不存在则创建并将其添加到此容器。

maybeCreate(name, type)

查找具有给定名称和类型的项,如果不存在则创建并将其添加到此容器。

named(name)

按名称定位任务,不触发其创建或配置,如果不存在此类对象则失败。

named(name, type)

按名称和类型定位对象,如果不存在此类对象则失败。

named(name, type, configurationAction)

按名称和类型定位对象,如果不存在此类对象则失败。给定的配置 action 在对象从 provider 返回之前针对该对象执行。

named(name, configurationAction)

按名称定位对象,如果不存在此类对象则失败。给定的配置 action 在对象从 provider 返回之前针对该对象执行。

named(nameFilter)

返回包含名称匹配所提供过滤器的对象的集合。返回的集合是实时的,因此当匹配的对象添加到此集合时,它们在过滤后的集合中也可见。

register(name)

定义一个新任务,该任务在需要时创建。任务在通过查询方法(例如 TaskCollection.getByName(java.lang.String))定位时,添加到任务图以执行时,或在此方法的返回值上调用 Provider.get() 时被视为“需要”。

register(name, type)

定义一个新任务,该任务在需要时创建。任务在通过查询方法(例如 TaskCollection.getByName(java.lang.String))定位时,添加到任务图以执行时,或在此方法的返回值上调用 Provider.get() 时被视为“需要”。

register(name, type, constructorArgs)

定义一个新任务,该任务在需要时创建,并将给定参数传递给带有 @Inject 注解的构造函数。任务在通过查询方法(例如 TaskCollection.getByName(java.lang.String))定位时,添加到任务图以执行时,或在此方法的返回值上调用 Provider.get() 时被视为“需要”。传递给任务构造函数的所有值都不能为 null;否则将抛出 NullPointerException

register(name, type, configurationAction)

定义一个新任务,该任务在需要时创建并配置。任务在通过查询方法(例如 TaskCollection.getByName(java.lang.String))定位时,添加到任务图以执行时,或在此方法的返回值上调用 Provider.get() 时被视为“需要”。

register(name, configurationAction)

定义一个新任务,该任务在需要时创建并配置。任务在通过查询方法(例如 TaskCollection.getByName(java.lang.String))定位时,添加到任务图以执行时,或在此方法的返回值上调用 Provider.get() 时被视为“需要”。

replace(name)

创建一个给定名称的 Task 并将其添加到此容器,替换任何同名现有任务。

replace(name, type)

创建一个给定名称和类型的 Task,并将其添加到此容器,替换任何同名现有任务。

脚本块

无脚本块

方法详情

NamedDomainObjectContainer<U> containerWithType(Class<U> type)

创建一个常规容器,该容器包装多态容器,以呈现指定类型的所有元素。

此方法是一个中间操作。它不会改变集合中元素的实例化/未实例化状态。

Task create(String name)

注意:此方法已废弃,将在 Gradle 的下一个主要版本中移除。

创建一个给定名称的 Task 并将其添加到此容器。

添加任务后,它将作为项目的属性可用,因此你可以在构建文件中按名称引用任务。

Task create(String name, Closure configureClosure)

注意:此方法已废弃,将在 Gradle 的下一个主要版本中移除。

创建一个给定名称的 Task 并将其添加到此容器。给定的 Closure 用于在任务通过此方法返回之前配置它。

添加任务后,它将作为项目的属性可用,因此你可以在构建文件中按名称引用任务。

T create(String name, Class<T> type)

注意:此方法已废弃,将在 Gradle 的下一个主要版本中移除。

创建一个给定名称和类型的 Task,并将其添加到此容器。

添加任务后,它将作为项目的属性可用,因此你可以在构建文件中按名称引用任务。

T create(String name, Class<T> type, Object... constructorArgs)

注意:此方法已废弃,将在 Gradle 的下一个主要版本中移除。

创建一个给定名称和类型的 Task,将给定参数传递给带有 @Inject 注解的构造函数,并将其添加到此容器。传递给任务构造函数的所有值都不能为 null;否则将抛出 NullPointerException

添加任务后,它将作为项目的属性可用,因此你可以在构建文件中按名称引用任务。

T create(String name, Class<T> type, Action<? super T> configuration)

注意:此方法已废弃,将在 Gradle 的下一个主要版本中移除。

创建一个给定名称和类型的 Task,使用给定的 action 配置它,并将其添加到此容器。

添加任务后,它将作为项目的属性可用,因此你可以在构建文件中按名称引用任务。

Task create(String name, Action<? super Task> configuration)

注意:此方法已废弃,将在 Gradle 的下一个主要版本中移除。

创建一个给定名称且类型为 DefaultTaskTask,使用给定的 action 配置它,并将其添加到此容器。

添加任务后,它将作为项目的属性可用,因此你可以在构建文件中按名称引用任务。

Task create(Map<String, ?> options)

注意:此方法已废弃,将在 Gradle 的下一个主要版本中移除。

创建一个 Task 并将其添加到此容器。可以将创建选项的 Map 传递给此方法,以控制如何创建任务。以下选项可用:

允许的 Map 键
选项描述默认值
name要创建的任务的名称。无。必须指定。
type要创建的任务的类。DefaultTask
action任务执行时要执行的 Closure 或 Action。请参阅 Task.doFirst(org.gradle.api.Action)null
overwrite替换现有任务?false
dependsOn任务的依赖项。有关更多详情,请参阅此处[]
group任务的分组。null
description任务的描述。 null
constructorArgs要传递给任务类构造函数的参数。 null

添加任务后,它将作为项目的属性可用,因此你可以在构建文件中按名称引用任务。

如果此容器中已存在给定名称的任务且 overwrite 选项未设置为 true,则抛出异常。

Task create(Map<String, ?> options, Closure configureClosure)

注意:此方法已废弃,将在 Gradle 的下一个主要版本中移除。

创建一个 Task 并将其添加到此容器。可以将创建选项的 Map 传递给此方法,以控制如何创建任务。有关可用选项列表,请参阅 TaskContainer.create(java.util.Map)。给定的 Closure 用于在任务通过此方法返回之前配置它。

添加任务后,它将作为项目的属性可用,因此你可以在构建文件中按名称引用任务。

Task findByPath(String path)

按路径定位任务。你可以提供任务名称、相对路径或绝对路径。相对路径相对于此容器的项目进行解释。如果给定路径不存在任务,则此方法返回 null。

T getByName(String name)

按名称定位对象,如果不存在此类对象则失败。

此操作是急切的,将导致返回的元素被实例化。

T getByName(String name, Closure configureClosure)

按名称定位对象,如果不存在此类对象则失败。给定的配置 Closure 在对象通过此方法返回之前针对该对象执行。该对象作为其代理传递给 Closure。

此操作是急切的,将导致返回的元素被实例化。

T getByName(String name, Action<? super T> configureAction)

按名称定位对象,如果不存在此类对象则失败。给定的配置 Action 在对象通过此方法返回之前针对该对象执行。

此操作是急切的,将导致返回的元素被实例化。

Task getByPath(String path)

按路径定位任务。你可以提供任务名称、相对路径或绝对路径。相对路径相对于此容器的项目进行解释。如果给定路径不存在任务,则此方法抛出异常。

T maybeCreate(String name)

查找具有给定名称的项,如果不存在则创建并将其添加到此容器。

此操作是急切的,元素在返回前被实例化。

U maybeCreate(String name, Class<U> type)

查找具有给定名称和类型的项,如果不存在则创建并将其添加到此容器。

此操作是急切的,元素在返回前被实例化。

TaskProvider<T> named(String name)

按名称定位任务,不触发其创建或配置,如果不存在此类对象则失败。

TaskProvider<S> named(String name, Class<S> type)

按名称和类型定位对象,如果不存在此类对象则失败。

此方法是延迟的,不会导致返回的元素被实例化。

TaskProvider<S> named(String name, Class<S> type, Action<? super S> configurationAction)

按名称和类型定位对象,如果不存在此类对象则失败。给定的配置 action 在对象从 provider 返回之前针对该对象执行。

此方法是延迟的,不会导致返回的元素被实例化。

TaskProvider<T> named(String name, Action<? super T> configurationAction)

按名称定位对象,如果不存在此类对象则失败。给定的配置 action 在对象从 provider 返回之前针对该对象执行。

此方法是延迟的,不会导致返回的元素被实例化。

TaskCollection<T> named(Spec<String> nameFilter)

返回包含名称匹配所提供过滤器的对象的集合。返回的集合是实时的,因此当匹配的对象添加到此集合时,它们在过滤后的集合中也可见。

此方法是一个中间操作。它不会改变集合中元素的实例化/未实例化状态。

TaskProvider<Task> register(String name)

定义一个新任务,该任务在需要时创建。任务在通过查询方法(例如 TaskCollection.getByName(java.lang.String))定位时,添加到任务图以执行时,或在此方法的返回值上调用 Provider.get() 时被视为“需要”。

通常使用此方法比使用 TaskContainer.create(java.lang.String) 更高效,因为该方法会急切地创建任务,无论当前构建是否需要该任务。而此方法会延迟创建直到需要时。

TaskProvider<T> register(String name, Class<T> type)

定义一个新任务,该任务在需要时创建。任务在通过查询方法(例如 TaskCollection.getByName(java.lang.String))定位时,添加到任务图以执行时,或在此方法的返回值上调用 Provider.get() 时被视为“需要”。

通常使用此方法比使用 TaskContainer.create(java.lang.String, java.lang.Class, org.gradle.api.Action)TaskContainer.create(java.lang.String, java.lang.Class) 更高效,因为那些方法会急切地创建和配置任务,无论当前构建是否需要该任务。而此方法会延迟创建直到需要时。

TaskProvider<T> register(String name, Class<T> type, Object... constructorArgs)

定义一个新任务,该任务在需要时创建,并将给定参数传递给带有 @Inject 注解的构造函数。任务在通过查询方法(例如 TaskCollection.getByName(java.lang.String))定位时,添加到任务图以执行时,或在此方法的返回值上调用 Provider.get() 时被视为“需要”。传递给任务构造函数的所有值都不能为 null;否则将抛出 NullPointerException

通常使用此方法比使用 TaskContainer.create(java.lang.String, java.lang.Class, org.gradle.api.Action)TaskContainer.create(java.lang.String, java.lang.Class) 更高效,因为那些方法会急切地创建和配置任务,无论当前构建是否需要该任务。而此方法会延迟创建直到需要时。

TaskProvider<T> register(String name, Class<T> type, Action<? super T> configurationAction)

定义一个新任务,该任务在需要时创建并配置。任务在通过查询方法(例如 TaskCollection.getByName(java.lang.String))定位时,添加到任务图以执行时,或在此方法的返回值上调用 Provider.get() 时被视为“需要”。

通常使用此方法比使用 TaskContainer.create(java.lang.String, java.lang.Class, org.gradle.api.Action)TaskContainer.create(java.lang.String, java.lang.Class) 更高效,因为那些方法会急切地创建和配置任务,无论当前构建是否需要该任务。而此方法会延迟创建和配置直到需要时。

TaskProvider<Task> register(String name, Action<? super Task> configurationAction)

定义一个新任务,该任务在需要时创建并配置。任务在通过查询方法(例如 TaskCollection.getByName(java.lang.String))定位时,添加到任务图以执行时,或在此方法的返回值上调用 Provider.get() 时被视为“需要”。

通常使用此方法比使用 NamedDomainObjectContainer.create(java.lang.String, org.gradle.api.Action)TaskContainer.create(java.lang.String) 更高效,因为那些方法会急切地创建和配置任务,无论当前构建是否需要该任务。而此方法会延迟创建和配置直到需要时。

Task replace(String name)

创建一个给定名称的 Task 并将其添加到此容器,替换任何同名现有任务。

添加任务后,它将作为项目的属性可用,因此你可以在构建文件中按名称引用任务。

T replace(String name, Class<T> type)

创建一个给定名称和类型的 Task,并将其添加到此容器,替换任何同名现有任务。

添加任务后,它将作为项目的属性可用,因此你可以在构建文件中按名称引用任务。