API 文件 | ConsumableConfiguration |
---|
注意:此類別為 孵化中,並可能在 Gradle 的未來版本中變更。
一個 Configuration
,可透過發布和依賴管理來使用。
屬性 | 描述 |
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 版本中被棄用並移除。
請參閱 ResolvedConfiguration
以取得關於為何不應使用此 API 的詳細資訊。
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
在以下情況參與依賴解析時:
- The
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)
相同。
FileCollection
fileCollection
(Dependency
...
dependencies)
Dependency
...注意:此方法已棄用,並將在 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 參數。