A {@code DependencyHandler} is used to declare artifact dependencies. Artifact dependencies are grouped intoconfigurations (see {@link org.gradle.api.artifacts.Configuration}), and a given dependency declarations is always attached to a single configuration.
To declare a specific dependency for a configuration you can use the following syntax:
dependencies { configurationName dependencyNotation1, dependencyNotation2, ... }
or, to configure a dependency when it is declared, you can additionally pass a configuration closure:
dependencies { configurationName dependencyNotation { configStatement1 configStatement2 } }
There are several supported dependency notations. These are described below. For each dependency declared this way, a {@link Dependency} object is created. You can use this object to query or further configure thedependency.
You can also always add instances of {@link org.gradle.api.artifacts.Dependency} directly:
configurationName <instance>
There are 2 notations supported for declaring a dependency on an external module. One is a string notation:
configurationName "group:name:version:classifier"
The other is a map notation:
configurationName group: group:, name: name, version: version, classifier: classifier
In both notations, all properties, except name, are optional.
External dependencies are represented by a {@link org.gradle.api.artifacts.ExternalModuleDependency}.
To add a client module to a configuration you can use the notation:
configurationName module(moduleNotation) { module dependencies }The module notation is the same as the dependency notations described above, except that the classifier property is not available. Client modules are represented using a {@link org.gradle.api.artifacts.ClientModule}.
To add a project dependency, you use the following notation
configurationName project(':someProject')
Project dependencies are represented using a {@link org.gradle.api.artifacts.ProjectDependency}.
You can also add a dependency using a {@link org.gradle.api.file.FileCollection}:
configurationName files('a file')
File dependencies are represented using a {@link org.gradle.api.artifacts.SelfResolvingDependency}.
@author Hans Dockter
|
|
|
|
|
|
|
|
|
|