Skip navigation.

exclude

Tag: exclude Parent: dependency

This feature gives you more control on a dependency for which you do not control its ivy file.
It enables to restrict the artifacts required, by excluding artifacts being published by the dependency or any of its transitive dependencies,
even if configuration does not a good separation of published artifacts

The same principle concerning configuration as for include applies to this exclude feature (see above the include feature).

Note that exclusion is always done AFTER inclusion has been done.

since 1.3 This exclude feature can also be used not only to exclude artifacts but also to exclude whole modules. Indeed when you exclude artifacts, it doesn't avoid ivy to search for the module itself, and to resolve the dependencies of the module. But you can also exclude the whole module, which means that the module will not be downloaded at all, and so its own dependencies will not be resolved. For sure, this is usually done to exclude not a direct dependency but an indirect one. To exclude a whole module, you just have to not specify any artifact name, type and ext in your exclude rule. For instance:

<dependency name="A" rev="1.0">
  <exclude module="B"/>
</dependency>

Attributes

Attribute Description Required
org the organisation of the dependency module or artifact to exclude, or a regexp matching this organisation since 1.3 No, defaults to *
module the name of the dependency module or the artifact to exclude, or a regexp matching this module name since 1.3 No, defaults to *
name the name of an artifact of the dependency module to add to the exclude list, or a regexp matching this name No, defaults to *
type the type of the artifact of the dependency module to add to the exclude list, or a regexp matching this name No, defaults to *
ext the extension of the artifact of the dependency module to add to the exclude list, or a regexp matching this name No, defaults to type
matcher the matcher to use to match the modules to excludes since 1.3 No, defaults to exactOrRegexp in pre 1.3 ivy files, and exact in 1.3 and superior
conf comma separated list of the master configurations in which this artifact should be included.
'*' wildcard can be used to designate all configurations of this module
No, defaults to '*', unless nested conf are specified

Child elements

Element Description Cardinality
conf configuration in which the artifact should be included 0..n