如何用Kotlin DSL编写Gradle buildSrc插件声明配置
Gradle Groovy DSL 转 Kotlin DSL 对应配置
你提供的Groovy DSL插件声明对应的Kotlin DSL写法如下:
gradlePlugin { plugins { create("javaConventionsPlugin") { id = "build.java-conventions" implementationClass = "buildlogic.plugins.JavaConventionsPlugin" } } }
补充说明
- Groovy DSL中
javaConventionsPlugin { }的写法本质是Gradle对NamedDomainObjectContainer提供的动态扩展方法,作用是创建名为javaConventionsPlugin的插件声明条目,对应Kotlin DSL中需要显式调用create方法完成创建操作 - 如果你是要修改已经存在的同名插件声明,将
create替换为named即可,示例如下:
gradlePlugin { plugins { named("javaConventionsPlugin") { id.set("build.java-conventions") implementationClass.set("buildlogic.plugins.JavaConventionsPlugin") } } }
内容的提问来源于stack exchange,提问作者Brad Mace
相关产品推荐
相关产品推荐

