Я только что немного попробовал, хотя у меня нет проекта, в котором подпроекты содержали бы скрипт сборки:
// this lists buildscript repositories:
getRootProject().getBuildscript().getRepositories().each { repo ->
println "root: " + repo.getName().toString()
}
// this might list nothing:
subprojects.findAll { project ->
project.buildscript.getRepositories().each { repo ->
println "sub: " + repo.getName().toString()
}
}
Основная проблема может заключаться в том, что это настраивается сверхувниз;например.Передача аргумента командной строки, который применил бы альтернативный блок buildscript.gradle
, могла бы работать, но изменение конфигурации корневого проекта в рамках подпроекта не будет.Может быть довольно необычно, что подпроекты имеют свой собственный блок buildscript
(эти зависимости плагинов Gradle ведут себя не так, как обычные зависимости Java - обычно можно только решить, где их применять).