Gradle脚本Kotlin和dependencyManagement

我正尝试将Spring Cloud Stream应用程序构建脚本移植到Kotlin。 到目前为止,除了依赖关系管理块之外,这么好。 网上很难找到任何东西。 样本也不包括该主题。

如何将下面的块转换为build.gradle.kts ? 谢谢。

 dependencyManagement { imports { mavenBom "org.springframework.cloud:spring-cloud-dependencies:Camden.SR2" } } 

One Solution collect form web for “Gradle脚本Kotlin和dependencyManagement”

完全没有测试,但我相信它应该是这样的:

 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脚本kotlin的项目扩展和groovy互操作函数。 你真的要深入到你正在配置的groovy插件的来源,看看它期望如何使用闭包。 在gradle脚本kotlin项目中的例子也是一个很好的指导。

编辑2016年12月19日

依赖管理插件的最新版本现在更多的gradle脚本kotlin友好 ,并将允许以下内容:

 configure<DependencyManagementExtension> { imports { it.mavenBom("io.spring.platform:platform-bom:Camden.SR2") } } 

它仍然可以从一些Kotlin扩展功能中受益,从而消除it的需求(而不是使用接收器),但绝对是一种改进!

编辑2017年11月3日

它现在没有it ,如下所示:

 configure<DependencyManagementExtension> { imports { mavenBom("io.spring.platform:platform-bom:Camden.SR2") } } 
  • 在kotlin中,如何返回由泛型类参数定义的实例
  • AsyncTask没有泄漏
  • 在V1.0.1中不能识别Kotlin扩展属性
  • 如何在Kotlin中初始化数组?
  • Kotlin为游戏开发
  • 如何在Android上使用Kotlin在BottomNavigationView上设置OnNavigationItemListener?
  • 生成错误:错误:执行任务':app:compileLightningLiteDebugKotlin'失败。 >编译错误
  • 使用Anko获取数据库行
  • Java项目中Kotlin的高阶函数
  • 将postgresql查询结果返回给一个函数
  • 为什么我在Kotlin中以0开头?
  • Kotlin language will be the best programming language for Android.