Каков соответствующий способ добавления в кучу пользовательских сценариев gradle, аналогичный применению плагинов?

#android #gradle

Вопрос:

Внутри градуировки уровня приложения мы можем сделать что-то вроде этого:

 plugins {
    id 'com.android.application'
    id 'kotlin-android'
    ...
}
 

Тем не менее, у меня есть несколько пользовательских сценариев gradle, которые я хотел бы применить. На данный момент я могу скопировать каждое из них под этим блоком, что-то вроде:

 plugins {
    id 'com.android.application'
    id 'kotlin-android'
}
apply from: "$rootDir/gradle/helpers/common-methods.gradle"
 

Что работает нормально, но мне было интересно, есть ли соответствующий метод типа блока/закрытия для их добавления, что-то вроде:

 foo {
   from: "$rootDir/gradle/helpers/common-methods.gradle"
}
 

Мне это особо не нужно, просто было интересно

Комментарии:

1. На самом деле я не слишком много знаю о gradle, у меня есть несколько пользовательских сценариев, но ничего особенного, если это дубликат, извините 🙂

2. Я думаю, что вы должны иметь возможность использовать apply в качестве закрытия (читайте: apply { from: ... } )

3. Привет @Зои, я на самом деле пытался повозиться с этим, прежде чем опубликовать вопрос, наконец-то нашел что-то, что работает, предположим, я мог бы сделать это вопросом и ответом прямо сейчас

Ответ №1:

Что ж, я нашел ответ.

 apply {
from "$rootDir/gradle/helpers/common-methods.gradle"
}
 

убедитесь, что вы используете пробел и не используете from:

использование from: даст вам приятную подробную ошибку:

 Statement labels may not be used in build scripts.
In case you tried to configure a property named 'from', replace ':' with '=' or ' ', otherwise it will not have the desired effect.
 

в этом случае решением было просто использовать пробел