Сценарий Gradle Котлин и dependencyManagement
Я пытаюсь перенести сценарий сборки приложения Spring Cloud Stream в Kotlin. Пока все хорошо, кроме блока управления зависимостями. В сети трудно что-либо найти. Образцы не охватывают и эту тему.
Как преобразовать следующий блок в build.gradle.kts
? Спасибо.
dependencyManagement {
imports {
mavenBom "org.springframework.cloud:spring-cloud-dependencies:Camden.SR2"
}
}
1 ответов
полностью не проверял, но я считаю, что это должно быть что-то вроде этого:
import io.spring.gradle.dependencymanagement.DependencyManagementExtension
import io.spring.gradle.dependencymanagement.ImportsHandler
configure<DependencyManagementExtension> {
imports(delegateClosureOf<ImportsHandler> {
mavenBom("org.springframework.cloud:spring-cloud-dependencies:Camden.SR2")
})
}
если вы не видели это, вы должны быть знакомы с Gradle Котлин скрипта расширения проекта и groovy interop функции. Вам действительно нужно копаться в источнике плагина groovy, который вы настраиваете, чтобы увидеть, как он ожидает использовать закрытие. Примеры в проекте gradle script kotlin также являются хорошим руководством.
редактирование 19 Декабря 2016
последняя версия плагина управления зависимость теперь больше gradle скрипт Котлин дружественный и позволит следующее:
configure<DependencyManagementExtension> {
imports {
it.mavenBom("io.spring.platform:platform-bom:Camden.SR2")
}
}
Он все еще может извлечь выгоду из некоторых функций расширения Kotlin, чтобы удалить необходимость it
(вместо приемника), но прогресс налицо!
Редактировать 3 Ноя 2017
теперь он работает без it
, как Итак:
configure<DependencyManagementExtension> {
imports {
mavenBom("io.spring.platform:platform-bom:Camden.SR2")
}
}