Для нашего многомодульного проекта Android мы используем Kotlin DSL для нашего проекта build.gradle.kts, модуля приложения build.gradle.kts, settings.gradle.kts. Однако мы хотели преобразовать файлы .gradle нашего библиотечного модуля в Kotlin DSL. Проблема, с которой мы сталкиваемся, заключается в том, что мы получаем Unresolved reference: android
при применении скрипта.
Я не вижу четкого примера наличия общего файла gradle.kts для библиотек Android, который можно было бы применить к библиотечным модулям Android.
Есть два способа сделать это, один сложнее другого.
Скрипты Gradle используют динамическое разрешение, поэтому вы можете поместить их в любой каталог, а затем применить к файлу сборки.
Есть два способа решить эту проблему, оба связаны с каталогом buildSrc/.
kotlin-dsl-precompiled-script-plugins
.Предварительно скомпилированный скрипт — это скрипт Kotlin, скомпилированный как часть обычный исходный код Kotlin и распространяется обычным образом, как java файлы классов, упакованные в какую-либо библиотеку, предназначенные для использования в виде двоичных файлов Плагин Gradle.
https://github.com/gradle/kotlin-dsl-samples/tree/master/samples/precompiled-script-plugin
Здесь отличный пример с более подробной информацией и пример репозитория, показывающий реализацию.
Спасибо, это руководство действительно помогло и прояснило ситуацию! Я пошел с предварительно скомпилированным вариантом.