A ConfigurationContainer
is responsible for declaring and managing configurations. See also Configuration.
You can obtain a ConfigurationContainer
instance by calling Project.getConfigurations,
or using the configurations
property in your build script.
The configurations in a container are accessible as read-only properties of the container, using the name of the configuration as the property name. For example:
configurations.create('myConfiguration') configurations.myConfiguration.transitive = false
A dynamic method is added for each configuration which takes a configuration closure. This is equivalent to calling getByName(String, groovy.lang.Closure). For example:
configurations.create('myConfiguration') configurations.myConfiguration { transitive = false }
apply plugin: 'java' //so that I can use 'compile' configuration //copying all dependencies attached to 'compile' into a specific folder task copyAllDependencies(type: Copy) { //referring to the 'compile' configuration from configurations.compile into 'allLibs' }An example showing how to declare and configure configurations
apply plugin: 'java' //so that I can use 'compile', 'testCompile' configurations configurations { //adding a configuration: myConfiguration //adding a configuration that extends existing configuration: //(testCompile was added by the java plugin) myIntegrationTestsCompile.extendsFrom(testCompile) //configuring existing configurations not to put transitive dependencies on the compile classpath //this way you can avoid issues with implicit dependencies to transitive libraries compile.transitive = false testCompile.transitive = false }Examples on configuring the resolution strategy - see docs for ResolutionStrategy
Type | Name and description |
---|---|
Configuration |
detachedConfiguration(Dependency... dependencies) Creates a configuration, but does not add it to this container. |
Configuration |
getAt(String name) {@inheritDoc} |
Configuration |
getByName(String name) {@inheritDoc} |
Configuration |
getByName(String name, Closure configureClosure) {@inheritDoc} |
Methods inherited from class | Name |
---|---|
interface NamedDomainObjectContainer |
configure, create, create, create, maybeCreate |
interface NamedDomainObjectSet |
findAll, matching, matching, withType |
interface NamedDomainObjectCollection |
add, addAll, addRule, addRule, findByName, getAsMap, getAt, getByName, getByName, getNamer, getNames, getRules, matching, matching, withType |
interface Set |
add, remove, equals, hashCode, clear, contains, isEmpty, iterator, size, toArray, toArray, spliterator, addAll, containsAll, removeAll, retainAll, stream, removeIf, parallelStream, forEach |
Creates a configuration, but does not add it to this container.
dependencies
- The dependencies of the configuration.{@inheritDoc}
{@inheritDoc}
{@inheritDoc}