EN
michaelbel
michaelbel
8 subscribers
goals
13.74 of $ 1 237 money raised
Поплыву на остров Ко Мадсум кормить диких кабанчиков

BOM-зависимости в Android

Управление зависимостями влияет на стабильность проекта. Разные версии библиотек могут конфликтовать, вызывая ошибки сборки. BOM (Bill of Materials) решает эту проблему, автоматически подбирая совместимые зависимости.
Как работает
• Прописывается в version catalog.
• Артефакт -bom подключается в dependencies через platform(...).
• Зависимости подключаются без явного указания версии (весь список библиотек автоматически не добавится).
• Отдельные версии указываются вручную – BOM их не переопределит.
• Для тестов BOM подключается через testImplementation(platform(...)) и androidTestImplementation(platform(...)).
Спецификаии BOM
stable (-bom) включает последние стабильные версии каждой библиотеки.
beta (-bom-beta) включает бета-, релиз-кандидаты (RC) или стабильные версии каждой библиотеки.
alpha (-bom-alpha) включает альфа-, бета-, RC- или стабильные версии каждой библиотеки.
Версия определяются добавлением суффикса -alpha и -beta к имени артефакта. У стабильной версии его нет.
Какие библиотеки имеют BOM-версию
Посмотреть список можно на специальной странице в каталоге артефактов Maven. Среди них:
Compose
Firebase
Kotlin
Coroutines
Koin
Koin Annotations
Okhttp
JUnit 5
Mockito
Если нажать на номер версии и отмотать до вкладки Managed Dependencies, можно увидеть список всех зависимостей, входящих в BOM.

Subscription levels

No subscription levels
Go up