На самом деле, это оба.Gradle
не заставляет вас быть декларативным, как Maven
или императивным, как Ant
, это может быть, и, вероятно, это будет и для вас.
Согласно документации Gradle :
Хорошо спроектированные сценарии сборки состоят в основном из декларативной конфигурации, а не из императивной логики
КакНасколько вы можете, используйте DSL Gradle и используйте пользовательские условные блоки только тогда, когда вам нужно обрабатывать конкретные случаи или пользовательские действия.