API 文档 | ConsumableConfiguration |
---|
注意:此类别是孵化中的特性,在未来的 Gradle 版本中可能会发生变化。
一种可以通过发布 (Publishing) 和依赖管理 (Dependency Management) 来消费的 Configuration
。
属性 | 描述 |
allArtifacts | 此配置的工件,包括继承的配置的工件。 |
allDependencies | 获取完整的已声明依赖集合,包括由超级配置 (superconfigurations) 贡献的依赖。 |
artifacts | 此配置的工件,不包括继承的配置的工件。 |
buildDependencies | 返回一个 |
dependencies | 获取此配置中直接包含的已声明依赖集合(忽略超级配置)。 |
description | 此配置的描述。 |
excludeRules | 用于解析此配置的任何依赖项时应用的排除规则。 |
extendsFrom | 此配置所继承的配置的名称。超级配置的工件在此配置中也可用。 |
hierarchy | 获取一个有序集合,递归包含此配置及其所有超级配置。 |
incoming | 返回一个 |
resolutionStrategy | 此配置使用的解析策略。解析策略提供了如何解析此配置的额外细节。有关更多信息和示例,请参阅 |
resolvedConfiguration | 返回一个 |
state | 此配置的状态。 |
transitive | 此配置的传递性。传递配置包含其直接依赖项及其所有依赖项的传递闭包。非传递配置仅包含直接依赖项。默认值为 true。 |
visible | 如果此配置是可见的,则返回 true。可见配置可在其所属项目之外使用。默认值为 true。 |
方法 | 描述 |
copy() | 创建此配置的副本,该副本仅包含此配置中直接包含的依赖项(不包含超级配置的贡献)。新配置将处于 UNRESOLVED 状态,但会保留此配置的所有其他属性,除了超级配置。副本的 |
copy(dependencySpec) | 接受一个闭包 (closure),该闭包被强制转换为 |
copy(dependencySpec) | 创建此配置的副本,忽略超级配置(参见 |
copyRecursive() | 创建此配置的副本,该副本包含此配置中直接包含的依赖项以及从超级配置派生的依赖项。新配置将处于 UNRESOLVED 状态,但会保留此配置的所有其他属性,除了超级配置。副本的 |
copyRecursive(dependencySpec) | 接受一个闭包,该闭包被强制转换为 |
copyRecursive(dependencySpec) | 创建此配置的副本,包含来自超级配置的依赖项(参见 |
defaultDependencies(action) | 如果配置在首次参与依赖解析时没有定义依赖项,则执行给定的 action。 |
exclude(excludeProperties) | 添加排除规则,以排除此配置的所有依赖项的传递依赖项。您也可以为每个依赖项添加排除规则。请参阅 |
extendsFrom(superConfigs) | 将给定的配置添加到此配置所继承的配置集合中。 |
fileCollection(dependencySpecClosure) | 已弃用 接受一个闭包,该闭包被强制转换为 |
fileCollection(dependencies) | 已弃用 惰性解析此配置。解析发生在首次访问返回的 |
fileCollection(dependencySpec) | 已弃用 惰性解析此配置。解析发生在首次访问返回的 |
files(dependencySpecClosure) | 已弃用 接受一个闭包,该闭包被强制转换为 |
files(dependencies) | 已弃用 解析此配置。这会定位并下载构成此配置的文件。但仅返回属于指定依赖项的最终文件集合。 |
files(dependencySpec) | 已弃用 解析此配置。这会定位并下载构成此配置的文件。但仅返回属于由 dependencySpec 指定的依赖项子集的最终文件集合。 |
getTaskDependencyFromProjectDependency(useDependedOn, taskName) | 返回一个 TaskDependency 对象,包含与此配置或其超级配置之一相关的项目依赖项中所有具有指定名称的任务的依赖项。这些其他项目可能是此配置所依赖的项目,也可能是基于 useDependOn 参数依赖于此配置的具有相似名称配置的项目。 |
PublishArtifactSet
allArtifacts
(只读)
此配置的工件,包括继承的配置的工件。
DependencySet
allDependencies
(只读)
获取完整的已声明依赖集合,包括由超级配置 (superconfigurations) 贡献的依赖。
此方法不解析配置。因此,返回值不包含传递依赖项。
PublishArtifactSet
artifacts
(只读)
此配置的工件,不包括继承的配置的工件。
TaskDependency
buildDependencies
(只读)
返回一个 TaskDependency
对象,包含构建属于此配置或其超级配置之一的本地依赖(例如项目依赖)所需的所有必需依赖。
String
description
此配置的描述。
Set
<ExcludeRule
>
excludeRules
(只读)
Set
<ExcludeRule
>用于解析此配置的任何依赖项时应用的排除规则。
Set
<Configuration
>
extendsFrom
Set
<Configuration
>此配置所继承的配置的名称。超级配置的工件在此配置中也可用。
Set
<Configuration
>
hierarchy
(只读)
Set
<Configuration
>获取一个有序集合,递归包含此配置及其所有超级配置。
ResolvableDependencies
incoming
(只读)
返回一个 ResolvableDependencies
实例,暴露依赖解析的结果。此方法是消费依赖解析输出的主要方式。
ResolutionStrategy
resolutionStrategy
(只读)
此配置使用的解析策略。解析策略提供了如何解析此配置的额外细节。有关更多信息和示例,请参阅 ResolutionStrategy
的文档。
ResolvedConfiguration
resolvedConfiguration
(只读)
返回一个 ResolvedConfiguration
,它是依赖解析结果的遗留视图。新代码请避免使用此方法。建议通过 Configuration.getIncoming()
访问解析输出。此 API 将在未来的 Gradle 版本中被弃用和移除。
有关为何不应使用此 API 的详细信息,请参阅 ResolvedConfiguration
。
Configuration
copy
()
创建此配置的副本,该副本仅包含此配置中直接包含的依赖项(不包含超级配置的贡献)。新配置将处于 UNRESOLVED 状态,但会保留此配置的所有其他属性,除了超级配置。副本的 Configuration.getHierarchy()
将不包含任何超级配置。
此方法仅适用于涉及可解析配置的特定情况,不应用作通用复制机制。
Configuration
copy
(Closure
dependencySpec)
接受一个闭包 (closure),该闭包被强制转换为 Spec
。其他行为与 Configuration.copy(org.gradle.api.specs.Spec)
相同。
此方法仅适用于涉及可解析配置的特定情况,不应用作通用复制机制。
Configuration
copy
(Spec
<? super Dependency
>
dependencySpec)
Spec
<? super Dependency
>创建此配置的副本,忽略超级配置(参见 Configuration.copy()
),但使用指定的依赖规范 (dependency spec) 过滤依赖项。
此方法仅适用于涉及可解析配置的特定情况,不应用作通用复制机制。
Configuration
copyRecursive
()
创建此配置的副本,该副本包含此配置中直接包含的依赖项以及从超级配置派生的依赖项。新配置将处于 UNRESOLVED 状态,但会保留此配置的所有其他属性,除了超级配置。副本的 Configuration.getHierarchy()
将不包含任何超级配置。
此方法仅适用于涉及可解析配置的特定情况,不应用作通用复制机制。
Configuration
copyRecursive
(Closure
dependencySpec)
接受一个闭包,该闭包被强制转换为 Spec
。其他行为与 Configuration.copyRecursive(org.gradle.api.specs.Spec)
相同。
此方法仅适用于涉及可解析配置的特定情况,不应用作通用复制机制。
Configuration
copyRecursive
(Spec
<? super Dependency
>
dependencySpec)
Spec
<? super Dependency
>创建此配置的副本,包含来自超级配置的依赖项(参见 Configuration.copyRecursive()
),但使用 dependencySpec 过滤依赖项。
此方法仅适用于涉及可解析配置的特定情况,不应用作通用复制机制。
Configuration
defaultDependencies
(Action
<? super DependencySet
>
action)
Action
<? super DependencySet
>如果配置在首次参与依赖解析时没有定义依赖项,则执行给定的 action。Configuration
将在以下情况下参与依赖解析:
Configuration
自身被解析时- 另一个继承此配置的
Configuration
被解析时 - 另一个将此配置作为项目依赖项引用的
Configuration
被解析时
此方法对于指定配置的默认依赖项很有用
configurations { conf } configurations['conf'].defaultDependencies { dependencies -> dependencies.add(owner.project.dependencies.create("org.gradle:my-util:1.0")) }
即使一个 Configuration
继承了另一个非空的 Configuration
,它也被视为空的。
如果提供了多个 action,每个 action 将被执行,直到依赖项集合不再为空。剩余的 action 将被忽略。
Configuration
exclude
(Map
<String
, String
>
excludeProperties)
Map
<String
, String
>添加排除规则,以排除此配置的所有依赖项的传递依赖项。您也可以为每个依赖项添加排除规则。请参阅 ModuleDependency.exclude(java.util.Map)
。
FileCollection
fileCollection
(Closure
dependencySpecClosure)
注意:此方法已弃用,并将在 Gradle 的下一个主要版本中移除。
接受一个闭包,该闭包被强制转换为 Spec
。其他行为与 Configuration.fileCollection(org.gradle.api.specs.Spec)
相同。
Dependency
... dependencies)
注意:此方法已弃用,并将在 Gradle 的下一个主要版本中移除。
惰性解析此配置。解析发生在首次访问返回的 FileCollection
的元素时。这会定位并下载构成此配置的文件。FileCollection 中仅包含属于指定依赖项的最终文件集合。
FileCollection
fileCollection
(Spec
<? super Dependency
>
dependencySpec)
Spec
<? super Dependency
>注意:此方法已弃用,并将在 Gradle 的下一个主要版本中移除。
惰性解析此配置。解析发生在首次访问返回的 FileCollection
的元素时。这会定位并下载构成此配置的文件。FileCollection 中仅包含属于由 dependencySpec 指定的依赖项子集的最终文件集合。
注意:此方法已弃用,并将在 Gradle 的下一个主要版本中移除。
接受一个闭包,该闭包被强制转换为 Spec
。其他行为与 Configuration.files(org.gradle.api.specs.Spec)
相同。
Set
<File
>
files
(Dependency
...
dependencies)
Set
<File
>Dependency
...注意:此方法已弃用,并将在 Gradle 的下一个主要版本中移除。
解析此配置。这会定位并下载构成此配置的文件。但仅返回属于指定依赖项的最终文件集合。
Set
<File
>
files
(Spec
<? super Dependency
>
dependencySpec)
Set
<File
>Spec
<? super Dependency
>注意:此方法已弃用,并将在 Gradle 的下一个主要版本中移除。
解析此配置。这会定位并下载构成此配置的文件。但仅返回属于由 dependencySpec 指定的依赖项子集的最终文件集合。
TaskDependency
getTaskDependencyFromProjectDependency
(boolean
useDependedOn, String
taskName)
返回一个 TaskDependency 对象,包含与此配置或其超级配置之一相关的项目依赖项中所有具有指定名称的任务的依赖项。这些其他项目可能是此配置所依赖的项目,也可能是基于 useDependOn 参数依赖于此配置的具有相似名称配置的项目。