API 文档 | ComponentSelectionRules |
---|
表示组件选择规则的容器。规则可以作为配置的 resolutionStrategy 的一部分应用,并且可以通过规则显式接受或拒绝单个组件。既不接受也不拒绝的组件将受到默认版本匹配策略的约束。
configurations { conf { resolutionStrategy { componentSelection { all { ComponentSelection selection -> if (selection.candidate.module == 'someModule' && selection.candidate.version == '1.1') { selection.reject("bad version '1.1' for 'someModule'") } } all { ComponentSelection selection -> if (selection.candidate.module == 'someModule' && selection.getDescriptor(IvyModuleDescriptor)?.branch == 'testing') { if (selection.metadata == null || selection.metadata.status != 'milestone') { selection.reject("only use milestones for someModule:testing") } } } withModule("org.sample:api") { ComponentSelection selection -> if (selection.candidate.version == "1.1") { selection.reject("known bad version") } } } } } }
方法 | 描述 |
all(closure) | 添加一个组件选择规则,该规则将应用于所有已解析的组件。每个规则将接收一个 |
all(ruleSource) | 添加一个由规则源支持的组件选择规则,该规则将应用于所有已解析的组件。ruleSource 提供规则,该规则恰好是一个使用 |
all(selectionAction) | 添加一个简单的组件选择规则,该规则将应用于所有已解析的组件。每个规则将接收一个 |
withModule(id, closure) | 添加一个组件选择规则,该规则将应用于指定的模块。每个规则将接收一个 |
withModule(id, ruleSource) | 添加一个由规则源支持的组件选择规则,该规则将应用于指定的模块。ruleSource 提供规则,该规则恰好是一个使用 |
withModule(id, selectionAction) | 添加一个组件选择规则,该规则将应用于指定的模块。每个规则将接收一个 |
ComponentSelectionRules
all
(Closure
<?>
closure)
Closure
<?>添加一个组件选择规则,该规则将应用于所有已解析的组件。每个规则将接收一个 ComponentSelection
对象作为参数。
ComponentSelectionRules
all
(Object
ruleSource)
添加一个由规则源支持的组件选择规则,该规则将应用于所有已解析的组件。ruleSource 提供规则,该规则恰好是一个使用 Mutate
注释的规则方法。此规则方法
- 必须返回 void。
- 必须将
ComponentSelection
作为其参数。
ComponentSelectionRules
all
(Action
<? super ComponentSelection
>
selectionAction)
Action
<? super ComponentSelection
>添加一个简单的组件选择规则,该规则将应用于所有已解析的组件。每个规则将接收一个 ComponentSelection
对象作为参数。
ComponentSelectionRules
withModule
(Object
id, Closure
<?>
closure)
Closure
<?>添加一个组件选择规则,该规则将应用于指定的模块。每个规则将接收一个 ComponentSelection
对象作为参数。
ComponentSelectionRules
withModule
(Object
id, Object
ruleSource)
添加一个由规则源支持的组件选择规则,该规则将应用于指定的模块。ruleSource 提供规则,该规则恰好是一个使用 Mutate
注释的规则方法。此规则方法
- 必须返回 void。
- 必须将
ComponentSelection
作为其参数。
ComponentSelectionRules
withModule
(Object
id, Action
<? super ComponentSelection
>
selectionAction)
Action
<? super ComponentSelection
>添加一个组件选择规则,该规则将应用于指定的模块。每个规则将接收一个 ComponentSelection
对象作为参数。