Хорошей ли практикой является объявление плагинов с использованием id("org.company.myplugin") вместо alias(libs.plugins.Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Хорошей ли практикой является объявление плагинов с использованием id("org.company.myplugin") вместо alias(libs.plugins.

Сообщение Anonymous »

Каталоги версий Gradle — это новый способ управления зависимостями и плагинами между различными модулями в многомодульном проекте.
На основе руководства по переходу к каталогу версий (Ссылка) и документации каталога версий (Ссылка), чтобы определить плагин в файле build.gradle.kts уровня модуля, следует использовать приведенный ниже синтаксис, который будет получать идентификатор плагина из файла build.gradle.kts на уровне модуля. Файл libs.versions.toml.:

Код: Выделить всё

plugins {
alias(libs.plugins.com.android.application)
alias(libs.plugins.hilt)
...
}
Однако, взглянув на проект «Теперь в Android» (Ссылка), который считается руководством по передовой практике разработки проекта Android, мы увидим, что внутри каждого файла build.gradle.kts уровня модуля плагины определены, как показано ниже:

Код: Выделить всё

plugins {
id("nowinandroid.android.application")
id("nowinandroid.android.hilt")
...
}
В приложении nowinandroid функция alais() не используется, поэтому она не соответствует синтаксису каталога версий. Все плагины определяются с помощью id(), который получает жестко запрограммированный идентификатор плагина, например «nowinandroid.android.application». Это происходит во всех файлах build.gradle.kts на уровне модуля!
Мои вопросы:
Во-первых, мне интересно, почему этот проект nowinandroid использует id() вместо использования alias() для определения плагинов в файлах build.gradle.kts в соответствии с рекомендациями? Во-первых, не используется синтаксис каталога версий, а во-вторых, идентификатор жестко запрограммирован в нескольких модулях, что, похоже, затрудняет любое возможное изменение идентификатора в будущем.
Во-вторых, почему (и как) идентификаторы плагинов выглядят настроенными? Например, вместо id("com.google.dagger.hilt.android") он использовал id("nowinandroid.android.hilt"), который использует собственный домен для такой библиотеки, как Hilt!

Подробнее здесь: https://stackoverflow.com/questions/768 ... gin-instea
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»