我配置了kotlin-jpa插件,以便为实体生成默认构造函数,但它似乎无法处理继承的类。示例:
plugins {
kotlin("plugin.jpa") version "1.7.20"
}
@MappedSuperclass
class BaseEntity(
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
var id: Long,
)
@Entity
class YearEntity(
@Column(name = "value", nullable = false)
var value: String? = null,
) : BaseEntity()
这无法编译,因为它表明BaseEntity没有默认构造函数。我错过了什么?
我们不能直接调用零参数构造函数,因为它是合成
来自无arg插件文档-无arg编译器插件
生成的构造函数是合成的,因此不能直接从Java或Kotlin调用,但可以使用反射调用。