API Documentation: | ComponentMetadataHandler |
---|
Note: This class is incubating and may change in a future version of Gradle.
Allows to modify the metadata of depended-on software components.
Example:
dependencies { components { //triggered during dependency resolution, for each component: eachComponent { ComponentMetadataDetails details -> if (details.id.group == "org.foo") { def version = details.id.version // assuming status is last part of version string details.status = version.substring(version.lastIndexOf("-") + 1) details.statusScheme = ["bronze", "silver", "gold", "platinum"] } } //Configuring component module metadata for the entire "google-collections" module, // declaring that legacy library was replaced with "guava". //This way, Gradle's conflict resolution can use this information and use "guava" // in case both libraries appear in the same dependency tree. module("com.google.collections:google-collections").replacedBy("com.google.guava:guava") } }
Method | Description |
eachComponent(rule) | Incubating Adds a rule to modify the metadata of depended-on software components. For example, this allows to set a component's status and status scheme from within the build script, overriding any value specified in the component descriptor. |
eachComponent(rule) | Incubating Adds a rule to modify the metadata of depended-on software components. For example, this allows to set a component's status and status scheme from within the build script, overriding any value specified in the component descriptor. |
void
eachComponent
(Closure
<?>
rule)
Closure
<?>Note: This method is incubating and may change in a future version of Gradle.
Adds a rule to modify the metadata of depended-on software components. For example, this allows to set a component's status and status scheme from within the build script, overriding any value specified in the component descriptor.
The rule must declare a ComponentMetadataDetails
as it's first parameter,
allowing the component metadata to be modified.
In addition, the rule can declare additional (read-only) parameters, which may provide extra details about the component. The order of these additional parameters is irrelevant.
Presently, the following additional parameter types are supported:
IvyModuleDescriptor
Additional Ivy-specific metadata. Rules declaring this parameter will only be invoked for components packaged as an Ivy module.
void
eachComponent
(Action
<? super ComponentMetadataDetails
>
rule)
Action
<? super ComponentMetadataDetails
>Note: This method is incubating and may change in a future version of Gradle.
Adds a rule to modify the metadata of depended-on software components. For example, this allows to set a component's status and status scheme from within the build script, overriding any value specified in the component descriptor.