具有kotlin-set布尔扩展属性的gradle插件

具有kotlin-set布尔扩展属性的gradle插件,gradle,kotlin,gradle-plugin,Gradle,Kotlin,Gradle Plugin,我正在尝试将gradle插件从groovy迁移到kotlin。我有一个布尔属性,我想在插件扩展中将其初始化为false: open class MyPluginExtension(project: Project) { val myBooleanProperty: Property<Boolean> = project.objects.property(Boolean::class.java) init { myBooleanProperty.se

我正在尝试将gradle插件从groovy迁移到kotlin。我有一个布尔
属性
,我想在插件扩展中将其初始化为false:

open class MyPluginExtension(project: Project) {

    val myBooleanProperty: Property<Boolean> = project.objects.property(Boolean::class.java)

    init {
        myBooleanProperty.set(false)
    }
}
异常在
org.gradle.api.internal.provider.DefaultPropertyState\set(T)


对此有何想法?

Kotlin中的Boolean::class.java指的是基元类型。请尝试指定对象类型:

val myBooleanProperty: Property<Boolean> = project.objects.property(Boolean::class.javaObjectType)
val myBooleanProperty:Property=project.objects.Property(Boolean::class.javaObjectType)

看起来像个bug,你有没有搜索过它是否已经存档?是的,这可能就是原因。我无法再验证你的答案,因为在此期间,该项目已进入另一个方向。
val myBooleanProperty: Property<Boolean> = project.objects.property(Boolean::class.javaObjectType)