Vous pouvez déclarer des dépendances courantes dans un script parent:
ext.libraries = [ // Groovy map literal
spring_core: "org.springframework:spring-core:3.1",
junit: "junit:junit:4.10"
]
À partir d'un script enfant, vous pouvez ensuite utiliser les déclarations de dépendance comme ceci:
dependencies {
compile libraries.spring_core
testCompile libraries.junit
}
Pour partager des déclarations de dépendance avec des options de configuration avancées, vous pouvez utiliser DependencyHandler.create
:
libraries = [
spring_core: dependencies.create("org.springframework:spring-core:3.1") {
exclude module: "commons-logging"
force = true
}
]
Plusieurs dépendances peuvent être partagées sous le même nom:
libraries = [
spring: [ // Groovy list literal
"org.springframework:spring-core:3.1",
"org.springframework:spring-jdbc:3.1"
]
]
dependencies { compile libraries.spring }
ajoutera ensuite les deux dépendances à la fois.
La seule information que vous ne pouvez pas partager de cette manière est la configuration ( portée en termes Maven) à laquelle une dépendance doit être affectée. Cependant, d'après mon expérience, il vaut mieux être explicite à ce sujet de toute façon.