api / org.gradle.api.artifacts.maven / Conf2ScopeMappingContainer

Conf2ScopeMappingContainer

interface Conf2ScopeMappingContainer

Defines a set of rules for how to map the Gradle dependencies to a POM. This mapping is based on the configuration the dependencies belong to.

Properties

COMPILE

static val COMPILE: String

PROVIDED

static val PROVIDED: String

RUNTIME

static val RUNTIME: String

TEST

static val TEST: String

Functions

addMapping

abstract fun addMapping(priority: Int, configuration: Configuration, scope: String): Conf2ScopeMappingContainer

Specifies that dependencies of a certain configuration should be mapped against a certain Maven scope. A configuration can be mapped to one and only one scope. If this method is called more than once for a particular configuration, the last call wins.

See #getMapping(java.util.Collection) for the rules how a scope is choosen from a set of mappings.

getMapping

abstract fun getMapping(configurations: MutableCollection<Configuration>): Conf2ScopeMapping

Returns a scope that corresponds to the given configurations. Dependencies of different configurations can be equal. But only one of those equals dependencies (which might differ in content) can be mapped to a POM (due to the nature of a Maven POM).

Which scope is returned depends on the existing mappings. See #addMapping(int, Configuration, String). If only one configuration is mapped, this mapping is used to choose the scope. If more than one configuration of a dependency is mapped, and those mappings all map to the same scope, this scope is used. If more than one configuration is mapped and the mappings map to different scopes, the mapping with the highest priority is used. If there is more than one mapping with the highest priority and those mappings map to different scopes, an exception is thrown.

getMappings

abstract fun getMappings(): MutableMap<Configuration, Conf2ScopeMapping>

Returns a map with all the configuration to scope mappings. If no such mapping has been defined, an empty map is returned.

isSkipUnmappedConfs

abstract fun isSkipUnmappedConfs(): Boolean

Returns whether unmapped configuration should be skipped or not. Defaults to true.

setSkipUnmappedConfs

abstract fun setSkipUnmappedConfs(skipDependenciesWithUnmappedConfiguration: Boolean): Unit

Sets, whether unmapped configuration should be skipped or not. If this is set to false, dependencies belonging to unmapped configurations will be added to the Maven POM with no scope specified. This means they belong to the Maven default scope, which is 'compile'.