注意:此類別為孵化中,未來 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
將在以下情況參與相依性解析:
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 參數相依於此組態的專案。