Package org.gradle.api.attributes
Interface Bundling
- All Superinterfaces:
Named
This attribute describes how dependencies of a component are found.
There are currently 3 supported modes:
external
, the default, where dependencies, if any, are found transitivelyembedded
, where dependencies are found inside the component, but using the same namespace as the original dependenciesshadowed
, where dependencies are found inside the component, but within a different namespace to avoid name clashes
As a practical example, let's consider the Java ecosystem:
-
Jar component:
external
indicates that transitive dependencies are themselves component jarsembedded
indicates that transitive dependencies have been included inside the component jar, without modifying their packagesshadowed
indicates that transitive dependencies have been included inside the component jar, under different packages to prevent conflicts
-
Sources component:
external
indicates that the source of transitive dependencies are themselves source jarsembedded
indicates that the source of transitive dependencies have been included inside the component source jar, without modifying their packagesshadowed
indicates that the source of transitive dependencies have been included inside the component source jar, under different packages
- Since:
- 5.3
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.gradle.api.Named
Named.Namer
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Dependencies are packaged within the main component artifact.static final String
The most common case: dependencies are provided as individual components.static final String
Dependencies are packaged within the main component artifact but also in a different namespace to prevent conflicts. -
Method Summary
-
Field Details
-
BUNDLING_ATTRIBUTE
-
EXTERNAL
The most common case: dependencies are provided as individual components.- See Also:
-
EMBEDDED
Dependencies are packaged within the main component artifact.- See Also:
-
SHADOWED
Dependencies are packaged within the main component artifact but also in a different namespace to prevent conflicts.- See Also:
-