extends

Tag: extends Parent: info

[since 2.2]

Identifies an optional parent descriptor for this module. For complicated projects composed of many modules that have common configurations or dependencies, inheritance allows modules to share this information. Which parts of the parent descriptor are inherited can be controlled with the extendType attribute.

Supported extendType values are:

Value Description

info

Attributes of the info element are inherited from the parent. When an attribute appears in both child and parent, the child value is used.

description

The content of the info/description element is inherited from the parent.

configurations

Configurations defined in the parent descriptor are added to any configurations defined in the child descriptor.

dependencies

Dependencies defined in the parent descriptor are added to any dependencies defined in the child descriptor.

licenses

Licenses defined in the parent descriptor are added to any licenses defined in the child descriptor.

all

info, description, configurations, licenses and dependencies from the parent descriptor are merged into the child descriptor.

Attributes

Attribute Description Required

organisation

the organisation of the parent module

Yes

module

the name of the parent module

Yes

revision

the revision of the parent module. Can be fixed, a dynamic value, or range of revisions; see dependency for information on specifying revisions.

Yes

extendType

which part(s) of the parent descriptor are inherited. Valid values are info, description, configurations, dependencies, and all.

No, default is all

location

A local filesystem path that should be searched for the parent descriptor. If the parent descriptor cannot be found at this location, it will be located using dependency resolvers like any normal dependency.

This attribute is intended for development use. For example, child module descriptors appear in a source control directory with the parent module descriptor at a higher level. location will then contain the relative path to the parent descriptor for use during development builds.

No, as long as the parent descriptor exists in an Ivy resolver