API 文件 | ResolvableConfiguration |
---|
注意:此類別為孵化中,並可能在 Gradle 的未來版本中變更。
一個 Configuration
,用於執行依賴性解析以建置依賴性圖表並解析 Artifact。
屬性 | 描述 |
allArtifacts | 此 Configuration 的 Artifact,包含擴展 Configuration 的 Artifact。 |
allDependencies | 取得完整的已宣告依賴性集合,包含由父層 Configuration 貢獻的依賴性。 |
artifacts | 此 Configuration 的 Artifact,不包含擴展 Configuration 的 Artifact。 |
buildDependencies | 傳回一個 |
dependencies | 取得直接包含在此 Configuration 中的已宣告依賴性集合(忽略父層 Configuration)。 |
description | 此 Configuration 的描述。 |
excludeRules | 用於解析此 Configuration 的任何依賴性時套用的排除規則。 |
extendsFrom | 此 Configuration 擴展自的 Configuration 名稱。父層 Configuration 的 Artifact 也可在這個 Configuration 中使用。 |
hierarchy | 取得一個排序過的集合,包含此 Configuration 和所有父層 Configuration(遞迴)。 |
incoming | 傳回一個 |
resolutionStrategy | 此 Configuration 使用的解析策略。解析策略提供關於如何解析此 Configuration 的額外詳細資訊。請參閱 |
resolvedConfiguration | 傳回 |
state | 此 Configuration 的狀態。 |
transitive | 此 Configuration 的傳遞性。一個傳遞性 Configuration 包含其直接依賴性的傳遞閉包,以及它們的所有依賴性。一個非傳遞性 Configuration 僅包含直接依賴性。預設值為 true。 |
visible | 如果這是一個可見的 Configuration,則傳回 true。一個可見的 Configuration 可在其所屬專案之外使用。預設值為 true。 |
方法 | 描述 |
copy() | 建立此 Configuration 的副本,該副本僅包含直接在此 Configuration 中的依賴性(不包含來自父層 Configuration 的貢獻)。新的 Configuration 將處於 UNRESOLVED 狀態,但將保留此 Configuration 的所有其他屬性,除了父層 Configuration。 |
copy(dependencySpec) | 接受一個 Closure,它會被強制轉換為 |
copy(dependencySpec) | 建立此 Configuration 的副本,忽略父層 Configuration(請參閱 |
copyRecursive() | 建立此 Configuration 的副本,其中包含直接在此 Configuration 中的依賴性以及從父層 Configuration 衍生的依賴性。新的 Configuration 將處於 UNRESOLVED 狀態,但將保留此 Configuration 的所有其他屬性,除了父層 Configuration。 |
copyRecursive(dependencySpec) | 接受一個 Closure,它會被強制轉換為 |
copyRecursive(dependencySpec) | 建立此 Configuration 的副本,其中包含來自父層 Configuration 的依賴性(請參閱 |
defaultDependencies(action) | 如果 Configuration 在首次參與依賴性解析時沒有定義任何依賴性,則執行給定的 action。當 |
exclude(excludeProperties) | 新增一個排除規則,以排除此 Configuration 的所有依賴性的傳遞依賴性。您也可以為每個依賴性新增排除規則。請參閱 |
extendsFrom(superConfigs) | 將給定的 Configuration 新增到此 Configuration 擴展自的 Configuration 集合中。 |
fileCollection(dependencySpecClosure) | 已棄用 接受一個 Closure,它會被強制轉換為 |
fileCollection(dependencies) | 已棄用 延遲解析此 Configuration。當首次存取傳回的 |
fileCollection(dependencySpec) | 已棄用 延遲解析此 Configuration。當首次存取傳回的 |
files(dependencySpecClosure) | 已棄用 接受一個 Closure,它會被強制轉換為 |
files(dependencies) | 已棄用 解析此 Configuration。這會定位並下載組成此 Configuration 的檔案。但僅傳回屬於指定依賴性的檔案結果集。 |
files(dependencySpec) | 已棄用 解析此 Configuration。這會定位並下載組成此 Configuration 的檔案。但僅傳回屬於 dependencySpec 指定的依賴性子集的檔案結果集。 |
getTaskDependencyFromProjectDependency(useDependedOn, taskName) | 傳回一個 TaskDependency 物件,其中包含依賴於與此 Configuration 或其父層 Configuration 相關的專案依賴性中,具有指定名稱的所有任務的依賴性。根據 useDependOn 參數,這些其他專案可能是此 Configuration 依賴的專案,或具有類似命名 Configuration 且依賴於此 Configuration 的專案。 |
PublishArtifactSet
allArtifacts
(唯讀)
此 Configuration 的 Artifact,包含擴展 Configuration 的 Artifact。
DependencySet
allDependencies
(唯讀)
取得完整的已宣告依賴性集合,包含由父層 Configuration 貢獻的依賴性。
此方法不會解析 Configuration。因此,傳回值不包含傳遞依賴性。
PublishArtifactSet
artifacts
(唯讀)
此 Configuration 的 Artifact,不包含擴展 Configuration 的 Artifact。
TaskDependency
buildDependencies
(唯讀)
傳回一個 TaskDependency
物件,其中包含建置屬於此 Configuration 或其父層 Configuration 的本地依賴性(例如專案依賴性)所需的所有依賴性。
DependencySet
dependencies
(唯讀)
取得直接包含在此 Configuration 中的已宣告依賴性集合(忽略父層 Configuration)。
此方法不會解析 Configuration。因此,傳回值不包含傳遞依賴性。
String
description
此 Configuration 的描述。
Set
<ExcludeRule
>
excludeRules
(唯讀)
Set
<ExcludeRule
>用於解析此 Configuration 的任何依賴性時套用的排除規則。
Set
<Configuration
>
extendsFrom
Set
<Configuration
>此 Configuration 擴展自的 Configuration 名稱。父層 Configuration 的 Artifact 也可在這個 Configuration 中使用。
Set
<Configuration
>
hierarchy
(唯讀)
Set
<Configuration
>取得一個排序過的集合,包含此 Configuration 和所有父層 Configuration(遞迴)。
ResolvableDependencies
incoming
(唯讀)
傳回一個 ResolvableDependencies
實例,公開依賴性解析的結果。此方法是取用依賴性解析輸出的主要方式。
ResolutionStrategy
resolutionStrategy
(唯讀)
此 Configuration 使用的解析策略。解析策略提供關於如何解析此 Configuration 的額外詳細資訊。請參閱 ResolutionStrategy
的文件以取得更多資訊和範例。
ResolvedConfiguration
resolvedConfiguration
(唯讀)
傳回 ResolvedConfiguration
,這是依賴性解析結果的舊版檢視。對於新程式碼,請避免使用此方法。建議透過 Configuration.getIncoming()
存取解析輸出。此 API 將在未來 Gradle 版本中被棄用並移除。
請參閱 ResolvedConfiguration
以了解不應使用此 API 的詳細資訊。
此 Configuration 的傳遞性。一個傳遞性 Configuration 包含其直接依賴性的傳遞閉包,以及它們的所有依賴性。一個非傳遞性 Configuration 僅包含直接依賴性。預設值為 true。
Configuration
copy
()
建立此 Configuration 的副本,該副本僅包含直接在此 Configuration 中的依賴性(不包含來自父層 Configuration 的貢獻)。新的 Configuration 將處於 UNRESOLVED 狀態,但將保留此 Configuration 的所有其他屬性,除了父層 Configuration。Configuration.getHierarchy()
的副本將不包含任何父層 Configuration。
此方法僅適用於涉及可解析 Configuration 的特定情況,不 適用於一般用途的複製機制。
Configuration
copy
(Closure
dependencySpec)
接受一個 Closure,它會被強制轉換為 Spec
。其他行為方式與 Configuration.copy(org.gradle.api.specs.Spec)
相同
此方法僅適用於涉及可解析 Configuration 的特定情況,不 適用於一般用途的複製機制。
Configuration
copy
(Spec
<? super Dependency
>
dependencySpec)
Spec
<? super Dependency
>建立此 Configuration 的副本,忽略父層 Configuration(請參閱 Configuration.copy()
),但使用指定的依賴性規格篩選依賴性。
此方法僅適用於涉及可解析 Configuration 的特定情況,不 適用於一般用途的複製機制。
Configuration
copyRecursive
()
建立此 Configuration 的副本,其中包含直接在此 Configuration 中的依賴性以及從父層 Configuration 衍生的依賴性。新的 Configuration 將處於 UNRESOLVED 狀態,但將保留此 Configuration 的所有其他屬性,除了父層 Configuration。Configuration.getHierarchy()
的副本將不包含任何父層 Configuration。
此方法僅適用於涉及可解析 Configuration 的特定情況,不 適用於一般用途的複製機制。
Configuration
copyRecursive
(Closure
dependencySpec)
接受一個 Closure,它會被強制轉換為 Spec
。其他行為方式與 Configuration.copyRecursive(org.gradle.api.specs.Spec)
相同
此方法僅適用於涉及可解析 Configuration 的特定情況,不 適用於一般用途的複製機制。
Configuration
copyRecursive
(Spec
<? super Dependency
>
dependencySpec)
Spec
<? super Dependency
>建立此 Configuration 的副本,其中包含來自父層 Configuration 的依賴性(請參閱 Configuration.copyRecursive()
),但使用 dependencySpec 篩選依賴性。
此方法僅適用於涉及可解析 Configuration 的特定情況,不 適用於一般用途的複製機制。
Configuration
defaultDependencies
(Action
<? super DependencySet
>
action)
Action
<? super DependencySet
>如果 Configuration 在首次參與依賴性解析時沒有定義任何依賴性,則執行給定的 action。當 Configuration
在以下情況參與依賴性解析:
Configuration
本身已解析- 另一個擴展此 Configuration 的
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
>新增一個排除規則,以排除此 Configuration 的所有依賴性的傳遞依賴性。您也可以為每個依賴性新增排除規則。請參閱 ModuleDependency.exclude(java.util.Map)
。
Configuration
extendsFrom
(Configuration
...
superConfigs)
Configuration
...將給定的 Configuration 新增到此 Configuration 擴展自的 Configuration 集合中。
Configuration 僅允許從同一個專案中的其他 Configuration 擴展。
FileCollection
fileCollection
(Closure
dependencySpecClosure)
注意:此方法已棄用,並將在 Gradle 的下一個主要版本中移除。
接受一個 Closure,它會被強制轉換為 Spec
。其他行為方式與 Configuration.fileCollection(org.gradle.api.specs.Spec)
相同。
FileCollection
fileCollection
(Dependency
...
dependencies)
Dependency
...注意:此方法已棄用,並將在 Gradle 的下一個主要版本中移除。
延遲解析此 Configuration。當首次存取傳回的 FileCollection
的元素時,才會發生解析。這會定位並下載組成此 Configuration 的檔案。FileCollection 中僅包含屬於指定依賴性的檔案結果集。
FileCollection
fileCollection
(Spec
<? super Dependency
>
dependencySpec)
Spec
<? super Dependency
>注意:此方法已棄用,並將在 Gradle 的下一個主要版本中移除。
延遲解析此 Configuration。當首次存取傳回的 FileCollection
的元素時,才會發生解析。這會定位並下載組成此 Configuration 的檔案。FileCollection 中僅包含屬於 dependencySpec 指定的依賴性子集的檔案結果集。
注意:此方法已棄用,並將在 Gradle 的下一個主要版本中移除。
接受一個 Closure,它會被強制轉換為 Spec
。其他行為方式與 Configuration.files(org.gradle.api.specs.Spec)
相同。
Set
<File
>
files
(Dependency
...
dependencies)
Set
<File
>Dependency
...注意:此方法已棄用,並將在 Gradle 的下一個主要版本中移除。
解析此 Configuration。這會定位並下載組成此 Configuration 的檔案。但僅傳回屬於指定依賴性的檔案結果集。
Set
<File
>
files
(Spec
<? super Dependency
>
dependencySpec)
Set
<File
>Spec
<? super Dependency
>注意:此方法已棄用,並將在 Gradle 的下一個主要版本中移除。
解析此 Configuration。這會定位並下載組成此 Configuration 的檔案。但僅傳回屬於 dependencySpec 指定的依賴性子集的檔案結果集。
TaskDependency
getTaskDependencyFromProjectDependency
(boolean
useDependedOn, String
taskName)
傳回一個 TaskDependency 物件,其中包含依賴於與此 Configuration 或其父層 Configuration 相關的專案依賴性中,具有指定名稱的所有任務的依賴性。根據 useDependOn 參數,這些其他專案可能是此 Configuration 依賴的專案,或具有類似命名 Configuration 且依賴於此 Configuration 的專案。