2
我有一個使用apply from
調用各種其他gradle腳本的Gradle構建。主要的build.gradle
和每個子腳本都使用相同的構建腳本插件(特別是gradle-cargo-plugin)。如何避免每個構建腳本中出現重複的插件聲明?
我已經成功地得到這個工作的唯一方法是重複每個腳本插件的聲明:
build.gradle
:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'org.gradle.api.plugins:gradle-cargo-plugin:1.5.1'
}
}
apply from: 'other.gradle'
// do something with the cargo plugin
other.gradle
:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'org.gradle.api.plugins:gradle-cargo-plugin:1.5.1'
}
}
// do something else with the cargo plugin
正如您所看到的,每個腳本都會重複buildscript
部分。更改該依賴關係變得單調乏味且容易出錯,但子腳本不會繼承主build.gradle
的依賴關係。
有沒有辦法清除它,要麼允許被調用的腳本繼承buildscript
依賴關係,要麼通過不同的方式委託給子腳本而不是使用apply from
?
我認爲這不是答案。當然,在兩個文件中複製buildscript的OP將會起作用。但是OP在問一個解決方案,他可以在其中聲明一個構建依賴關係,從中可以繼承其他的gradle腳本文件。它不關於插件的buildscript的可見性 – cherit 2017-06-06 20:43:05