提供者工厂

API文档:ProviderFactory

用于创建 的实例的工厂Provider

通过使用 注释公共构造函数或属性 getter 方法,可以将工厂的实例注入到任务、插件或其他对象中javax.inject.Inject。也可以通过Project.getProviders()和获得Settings.getProviders()

特性

无属性

方法

方法描述
credentials(credentialsType, identity)

Provider为给定类型创建一个Credentials

credentials(credentialsType, identity)

Provider为给定类型创建一个Credentials

environmentVariable(variableName)

创建一个Provider,其值是从具​​有给定名称的环境变量中获取的。

environmentVariable(variableName)

创建一个Provider,其值是从具​​有给定名称的环境变量中获取的。

environmentVariablesPrefixedBy(variableNamePrefix)
孵化

创建一个Provider,其值是环境变量的名称到值映射,名称以给定前缀开头。前缀比较区分大小写。返回的映射是不可变的。

environmentVariablesPrefixedBy(variableNamePrefix)
孵化

创建一个Provider,其值是环境变量的名称到值映射,名称以给定前缀开头。前缀比较区分大小写。返回的映射是不可变的。

exec(action)
孵化

允许延迟访问外部进程的输出。当在配置时读取过程输出时,它被视为配置模型的输入。后续构建将重新执行该过程以获取输出并检查缓存的模型是否仍然是最新的。无法配置进程输入和输出流。

fileContents(file)

允许延迟访问给定文件的内容。当在配置时读取文件内容时,该文件会自动被视为配置模型的输入。

fileContents(file)

允许延迟访问给定文件的内容。当在配置时读取文件内容时,该文件会自动被视为配置模型的输入。

gradlePropertiesPrefixedBy(variableNamePrefix)
孵化

创建一个Provider,其值为 Gradle 属性的名称到值映射,名称以给定前缀开头。前缀比较区分大小写。返回的映射是不可变的。

gradlePropertiesPrefixedBy(variableNamePrefix)
孵化

创建一个Provider,其值为 Gradle 属性的名称到值映射,名称以给定前缀开头。前缀比较区分大小写。返回的映射是不可变的。

gradleProperty(propertyName)

创建一个Provider,其值是从给定名称的 Gradle 属性中获取的。

gradleProperty(propertyName)

创建一个Provider,其值是从给定名称的 Gradle 属性中获取的。

javaexec(action)
孵化

允许延迟访问外部 java 进程的输出。当在配置时读取过程输出时,它被视为配置模型的输入。后续构建将重新执行该过程以获取输出并检查缓存的模型是否仍然是最新的。无法配置进程输入和输出流。

of(valueSourceType, configuration)

创建一个Provider,其值是从给定的 获得的ValueSource

provider(value)

创建一个Provider,其值是使用给定的 计算得出的Callable

systemPropertiesPrefixedBy(variableNamePrefix)
孵化

创建一个Provider,其值为系统属性的名称到值映射,名称以给定前缀开头。前缀比较区分大小写。返回的地图是不可变的。

systemPropertiesPrefixedBy(variableNamePrefix)
孵化

创建一个Provider,其值为系统属性的名称到值映射,名称以给定前缀开头。前缀比较区分大小写。返回的地图是不可变的。

systemProperty(propertyName)

创建一个Provider,其值是使用给定的属性名称从系统属性中获取的。

systemProperty(propertyName)

创建一个Provider,其值是使用给定的属性名称从系统属性中获取的。

zip(first, second, combiner)

返回一个提供程序,该提供程序的值将通过使用提供的组合器函数将一个提供程序值与另一个提供程序值组合来计算。

脚本块

无脚本块

方法详情

Provider<T> credentials(凭证类型、身份)Class<T>String

Provider为给定类型创建一个Credentials

此方法返回的提供程序应附加到任务的输入属性。这样,当且仅当要执行具有凭据属性的任务时,才会在执行任何任务之前验证凭据的存在。

请求的凭证类型的值将使用模式“身份”+凭证字段从项目的属性中获取。例如,PasswordCredentials身份为“myService”的提供程序将查找名为“myServiceUsername”和“myServicePassword”的属性。

目前支持以下凭证类型:

Provider<T> credentials(凭证类型、身份)Class<T>Provider<String>

Provider为给定类型创建一个Credentials

此方法返回的提供程序应附加到任务的输入属性。这样,当且仅当要执行具有凭据属性的任务时,才会在执行任何任务之前验证凭据的存在。

请求的凭证类型的值将使用模式“身份”+凭证字段从项目的属性中获取。例如,PasswordCredentials身份为“myService”的提供程序将查找名为“myServiceUsername”和“myServicePassword”的属性。

目前支持以下凭证类型:

Provider<String> environmentVariableString变量名称)

创建一个Provider,其值是从具​​有给定名称的环境变量中获取的。

Provider<String> environmentVariable(变量名称)Provider<String>

创建一个Provider,其值是从具​​有给定名称的环境变量中获取的。

Provider<Map<String, String>> environmentVariablesPrefixedBy(String变量名前缀)

注意:此方法正在孵化中,可能会在 Gradle 的未来版本中发生变化。

创建一个Provider,其值是环境变量的名称到值映射,名称以给定前缀开头。前缀比较区分大小写。返回的映射是不可变的。

Provider<Map<String, String>> environmentVariablesPrefixedBy(变量名前缀)Provider<String>

注意:此方法正在孵化中,可能会在 Gradle 的未来版本中发生变化。

创建一个Provider,其值是环境变量的名称到值映射,名称以给定前缀开头。前缀比较区分大小写。返回的映射是不可变的。

ExecOutput exec(行动)Action<? super ExecSpec>

注意:此方法正在孵化中,可能会在 Gradle 的未来版本中发生变化。

允许延迟访问外部进程的输出。当在配置时读取过程输出时,它被视为配置模型的输入。后续构建将重新执行该过程以获取输出并检查缓存的模型是否仍然是最新的。无法配置进程输入和输出流。

FileContents fileContentsRegularFile文件)

允许延迟访问给定文件的内容。当在配置时读取文件内容时,该文件会自动被视为配置模型的输入。

FileContents fileContents(文件)Provider<RegularFile>

允许延迟访问给定文件的内容。当在配置时读取文件内容时,该文件会自动被视为配置模型的输入。

Provider<Map<String, String>> gradlePropertiesPrefixedBy(String变量名前缀)

注意:此方法正在孵化中,可能会在 Gradle 的未来版本中发生变化。

创建一个Provider,其值为 Gradle 属性的名称到值映射,名称以给定前缀开头。前缀比较区分大小写。返回的映射是不可变的。

Provider<Map<String, String>> gradlePropertiesPrefixedBy(变量名前缀)Provider<String>

注意:此方法正在孵化中,可能会在 Gradle 的未来版本中发生变化。

创建一个Provider,其值为 Gradle 属性的名称到值映射,名称以给定前缀开头。前缀比较区分大小写。返回的映射是不可变的。

Provider<String> gradlePropertyString属性名称)

创建一个Provider,其值是从给定名称的 Gradle 属性中获取的。

Provider<String> gradleProperty(属性名称)Provider<String>

创建一个Provider,其值是从给定名称的 Gradle 属性中获取的。

ExecOutput javaexec(行动)Action<? super JavaExecSpec>

注意:此方法正在孵化中,可能会在 Gradle 的未来版本中发生变化。

允许延迟访问外部 java 进程的输出。当在配置时读取过程输出时,它被视为配置模型的输入。后续构建将重新执行该过程以获取输出并检查缓存的模型是否仍然是最新的。无法配置进程输入和输出流。

Provider<T> of(值源类型,配置)Class<? extends ValueSource<T, P>>Action<? super ValueSourceSpec<P>>

创建一个Provider,其值是从给定的 获得的ValueSource

Provider<T> provider(价值)Callable<? extends T>

创建一个Provider,其值是使用给定的 计算得出的Callable

提供程序处于活动状态,Callable每次查询其值时都会调用 。可能Callable会返回null,在这种情况下,提供者被认为没有价值。

Provider<Map<String, String>> systemPropertiesPrefixedBy(String变量名前缀)

注意:此方法正在孵化中,可能会在 Gradle 的未来版本中发生变化。

创建一个Provider,其值为系统属性的名称到值映射,名称以给定前缀开头。前缀比较区分大小写。返回的地图是不可变的。

Provider<Map<String, String>> systemPropertiesPrefixedBy(变量名前缀)Provider<String>

注意:此方法正在孵化中,可能会在 Gradle 的未来版本中发生变化。

创建一个Provider,其值为系统属性的名称到值映射,名称以给定前缀开头。前缀比较区分大小写。返回的地图是不可变的。

Provider<String> systemPropertyString属性名称)

创建一个Provider,其值是使用给定的属性名称从系统属性中获取的。

Provider<String> systemProperty(属性名称)Provider<String>

创建一个Provider,其值是使用给定的属性名称从系统属性中获取的。

Provider<R> zip(第一、第二、组合器)Provider<A>Provider<B>BiFunction<? super A, ? super B, ? extends R>

返回一个提供程序,该提供程序的值将通过使用提供的组合器函数将一个提供程序值与另一个提供程序值组合来计算。

如果提供的提供程序代表任务或任务的输出,则生成的提供程序将携带依赖性信息。