Каталоги версий
Управляйте версиями зависимостей
«Каталоги версий» — бесплатный урок Kotlin Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Kotlin Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Kotlin Academy содержит 4 уроков всего.
Проблема разрозненных версий
В многомодульных проектах версии зависимостей дублируются во множестве файлов сборки. Обновление одной библиотеки означает редактирование множества мест — это приводит к ошибкам и несогласованности.
Что такое каталог версий
Каталог версий централизует координаты зависимостей и версии в одном месте. Gradle создаёт типобезопасный метод доступа, на который можно ссылаться из любого модуля.
Файл libs.versions.toml
Каталог по умолчанию находится в gradle/libs.versions.toml. Он содержит разделы для версий, библиотек, плагинов и наборов.
[versions]
kotlin = "2.0.0"
coroutines = "1.8.1"Объявление библиотек
Раздел [libraries] сопоставляет псевдоним с координатами, ссылаясь на версию по имени.
[libraries]
coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "coroutines" }
guava = { module = "com.google.guava:guava", version = "33.2.1-jre" }Использование библиотеки в build.gradle.kts
Ссылайтесь на записи каталога через созданный метод доступа libs. Дефисы преобразуются в точки.
dependencies {
implementation(libs.coroutines.core)
implementation(libs.guava)
}Объявление плагинов
Раздел [plugins] централизует идентификаторы и версии плагинов.
[plugins]
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }Применение плагинов из каталога
Ссылайтесь на плагины каталога в блоке plugins { } с помощью функции alias.
plugins {
alias(libs.plugins.kotlin.jvm)
alias(libs.plugins.serialization)
}Наборы
Набор объединяет связанные библиотеки, чтобы добавлять их с помощью одного метода доступа.
[bundles]
testing = ["junit", "mockk"]
// build.gradle.kts:
// testImplementation(libs.bundles.testing)Типобезопасность и автодополнение
Поскольку libs — это сгенерированный код, интегрированная среда разработки автоматически дополняет записи, а сборка сразу завершается с ошибкой, если вы ссылаетесь на отсутствующий псевдоним. Это гораздо безопаснее необработанных строк.
Правила именования
В псевдонимах дефисы и точки используются как разделители, которые преобразуются во вложенные методы доступа. coroutines-core становится libs.coroutines.core. Избегайте символов подчёркивания.
Общий доступ между модулями
Один файл TOML автоматически виден каждому модулю. Измените версию один раз, и все модули получат это изменение — в этом заключается главное преимущество каталогов.
Быстрая проверка
Каково главное преимущество каталога версий в многомодульном проекте?
Итоги
Каталоги версий упрощают управление зависимостями:
- Объявляйте версии, библиотеки, плагины и наборы в
gradle/libs.versions.toml - Ссылайтесь на них через типобезопасный метод доступа
libsиalias(...) - Одно изменение обновляет каждый модуль
На этом курс по Gradle завершён.
Часто задаваемые вопросы
Урок «Каталоги версий» бесплатный?
Да — полный текст урока «Каталоги версий» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Kotlin Academy, подпишись на CoddyKit PRO. Курс Kotlin Academy содержит 4 уроков всего.
Чему я научусь в уроке «Каталоги версий»?
Управляйте версиями зависимостей Ты практикуешь Kotlin Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Kotlin Academy?
Предыдущий опыт не требуется. Kotlin Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Каталоги версий»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Kotlin Academy?
Да. Каждый урок Kotlin Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.