Ответ 1
Новый синтаксис plugins {...}
не может использоваться в рамках allprojects {...}
или subprojects {...}
. Кроме того, его можно использовать только в скриптах сборки (без плагинов сценариев, сценариев инициализации и т.д.). Если вы хотите избежать необходимости применять плагин к каждому проекту отдельно, я бы предложил использовать старую нотацию. Это проблема, о которой знает команда Gradle, и решение будет представлено в будущих версиях.
Обновление: начиная с Gradle 3.0, вы можете сделать это несколько измененным образом. Вы все еще должны явно использовать apply()
но вам больше не нужно иметь дело со всей buildscript { }
чтобы получить плагин в вашем пути к классам. Это также позволяет условно применять плагины. Ознакомьтесь с примечаниями к выпуску Gradle 3.0 для получения дополнительной информации.
plugins {
id 'my.special.plugin' version '1.0' apply false
}
allprojects {
apply plugin: 'java'
apply plugin: 'my.special.plugin'
}