Gradle:dependenciesへの定番設定
複数プロジェクトのdependenciesに決まりきったことを記述することがある。その筆頭としては、JUnit関連のライブラリだ。
例えば、
dependencies {
testCompile group: 'org.mockito', name: 'mockito-core', version: '2.19.0'
testCompile(group: 'junit', name: 'junit', version: '4.12') {
exclude module:'hamcrest-core'
}
testCompile group: 'org.hamcrest', name: 'hamcrest-all', version: '1.3'
.....
}
などと、どのbuild.gradleにも記述している。
簡略化案1
これを簡略化するには以下のようにする。
common.gradle
def STD_TEST_COMPILE = { d ->
d.testCompile group: 'org.mockito', name: 'mockito-core', version: '2.19.0'
d.testCompile(group: 'junit', name: 'junit', version: '4.12') {
exclude module:'hamcrest-core'
}
d.testCompile group: 'org.hamcrest', name: 'hamcrest-all', version: '1.3'
}
ext.STD_TEST_COMPILE = STD_TEST_COMPILE
build.gradle
apply from: 'common.gradle'
dependencies {
STD_TEST_COMPILE(delegate)
....
}
簡略化案2
common.gradle
ext.STD_TEST_COMPILE = { dependencies {
testCompile group: 'org.mockito', name: 'mockito-core', version: '2.19.0'
testCompile(group: 'junit', name: 'junit', version: '4.12') {
exclude module:'hamcrest-core'
}
testCompile group: 'org.hamcrest', name: 'hamcrest-all', version: '1.3'
}}
build.gradle
apply from: 'common.gradle'
STD_TEST_COMPILE()
dependencies {
....
}
ディスカッション
コメント一覧
まだ、コメントがありません