Вы можете объявить общие зависимости в родительском скрипте:
ext.libraries = [ // Groovy map literal
spring_core: "org.springframework:spring-core:3.1",
junit: "junit:junit:4.10"
]
Затем из дочернего сценария вы можете использовать такие объявления зависимостей:
dependencies {
compile libraries.spring_core
testCompile libraries.junit
}
Чтобы поделиться объявлениями зависимостей с расширенными параметрами конфигурации, вы можете использовать DependencyHandler.create
:
libraries = [
spring_core: dependencies.create("org.springframework:spring-core:3.1") {
exclude module: "commons-logging"
force = true
}
]
Под одним именем можно использовать несколько зависимостей:
libraries = [
spring: [ // Groovy list literal
"org.springframework:spring-core:3.1",
"org.springframework:spring-jdbc:3.1"
]
]
dependencies { compile libraries.spring }
затем добавит обе зависимости сразу.
Единственная информация, которой вы не можете поделиться таким образом, - это какая конфигурация ( область действия в терминах Maven) должна быть назначена зависимости. Однако, по моему опыту, в любом случае лучше сказать об этом прямо.