Что делает библиотека kotlin -bom? - PullRequest
1 голос
/ 17 января 2020

Я создал новый Kotlin проект под Gradle. По умолчанию он устанавливает эти зависимости для Kotlin -библиотечного проекта. И мне интересно, что делает kotlin -bom lib?

dependencies {
    // Align versions of all Kotlin components
    implementation(platform("org.jetbrains.kotlin:kotlin-bom"))

    // Use the Kotlin JDK 8 standard library.
    implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")

    // Use the Kotlin test library.
    testImplementation("org.jetbrains.kotlin:kotlin-test")

    // Use the Kotlin JUnit integration.
    testImplementation("org.jetbrains.kotlin:kotlin-test-junit")
}

1 Ответ

0 голосов
/ 24 апреля 2020

Артефакт kotlin-bom является POM только для зависимостей, который выравнивает все библиотеки Kotlin SDK с одинаковой версией.

См. содержимое POM для версии 1.3.72 для пример. Он использует раздел POM dependencyManagement, чтобы зависеть от одной и той же версии всех артефактов Kotlin SDK, таких как kotlin-stdlib, kotlin-stdlib-jdk8, kotlin-reflect, kotlin-test, et c.

Описание спецификации

Спецификация программного обеспечения не определяет зависимость от модуля или файла, а представляет собой список ограничений версии для других компонентов. Они определяют то, что называется платформой, которая представляет собой список компонентов с указанными c версиями, которые, как известно, хорошо играют вместе и / или образуют полезную единицу функциональности. Стоит отметить, что не все зависимости, перечисленные в спецификации, действительно должны быть включены в ваши проекты - это в основном способ сказать: «Если вы используете какой-либо из этих модулей, используйте эту версию».
- Глубокое погружение в начальный Kotlin build.gradle.kts

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...