API 文档 | Configuration |
---|
一个 Configuration
表示一组制品及其依赖项。有关声明配置的依赖项或管理配置的更多信息,请参阅 ConfigurationContainer
的文档。
Configuration 是一个 FileCollection
的实例,包含所有依赖项(另请参阅 Configuration.getAllDependencies()
),但不包含制品。如果您想引用此配置中声明的制品,请使用 Configuration.getArtifacts()
或 Configuration.getAllArtifacts()
。有关在此配置中声明制品的更多信息,请参阅 ArtifactHandler
的文档。有关更多信息,请参阅用户手册的声明依赖项章节。
属性 | 描述 |
allArtifacts | 此配置的制品,包括扩展配置的制品。 |
allDependencies | 获取声明的完整依赖项集,包括由父配置贡献的依赖项。 |
artifacts | 此配置的制品,不包括扩展配置的制品。 |
buildDependencies | 返回一个 |
dependencies | 获取直接包含在此配置中的声明依赖项集(忽略父配置)。 |
description | 此配置的描述。 |
excludeRules | 应用于解析此配置的任何依赖项的排除规则。 |
extendsFrom | 此配置扩展自的配置名称。父配置的制品在此配置中也可用。 |
hierarchy | 获取一个有序集,包括此配置及其所有父配置(递归)。 |
incoming | 返回一个 |
resolutionStrategy | 此配置使用的解析策略。解析策略提供了有关如何解析此配置的额外详情。有关更多信息和示例,请参阅 |
resolvedConfiguration | 返回 |
state | 配置的状态。 |
transitive | 此配置的传递性。传递性配置包含其直接依赖项及其所有依赖项的传递闭包。非传递性配置仅包含直接依赖项。默认值为 true。 |
visible | 如果这是一个可见配置,则返回 true。可见配置可在其所属项目外部使用。默认值为 true。 |
方法 | 描述 |
copy() | 创建此配置的副本,该副本仅包含直接在此配置中的依赖项(不包含父配置的贡献)。新配置将处于 UNRESOLVED 状态,但会保留此配置除父配置外的所有其他属性。副本的 |
copy(dependencySpec) | 接受一个闭包,该闭包被强制转换为 |
copy(dependencySpec) | 创建此配置的副本,忽略父配置(参阅 |
copyRecursive() | 创建此配置的副本,该副本包含直接在此配置中的依赖项以及从父配置派生的依赖项。新配置将处于 UNRESOLVED 状态,但会保留此配置除父配置外的所有其他属性。副本的 |
copyRecursive(dependencySpec) | 接受一个闭包,该闭包被强制转换为 |
copyRecursive(dependencySpec) | 创建此配置的副本,包含来自父配置的依赖项(参阅 |
defaultDependencies(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
(只读)
此配置的制品,包括扩展配置的制品。
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)
接受一个闭包,该闭包被强制转换为 Spec
。其行为与 Configuration.copy(org.gradle.api.specs.Spec)
相同。
此方法仅用于涉及可解析配置的特定情况,不作为通用复制机制使用。
Configuration
copy
(Spec
<? super Dependency
>
dependencySpec)
Spec
<? super Dependency
>创建此配置的副本,忽略父配置(参阅 Configuration.copy()
),但使用指定的依赖项规范过滤依赖项。
此方法仅用于涉及可解析配置的特定情况,不作为通用复制机制使用。
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
>如果配置在首次参与依赖项解析时没有定义的依赖项,则执行给定操作。Configuration
将在以下情况下参与依赖项解析:
Configuration
本身被解析- 扩展此配置的另一个
Configuration
被解析 - 引用此配置作为项目依赖项的另一个
Configuration
被解析
此方法对于为配置指定默认依赖项很有用
configurations { conf } configurations['conf'].defaultDependencies { dependencies -> dependencies.add(owner.project.dependencies.create("org.gradle:my-util:1.0")) }
即使 Configuration
扩展了另一个非空的 Configuration
,它也被视为空。
如果提供了多个操作,则每个操作将执行,直到依赖项集不再为空。剩余的操作将被忽略。
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 参数,包含依赖于此配置的同名配置的项目。