尝试运行kotlin spring启动应用程序时出现以下错误:
Caused by: java.lang.IllegalArgumentException: Not a managed type: class zielinskin.kotlinsample.data.SampleEntity
尝试在最新的spring boot和kotlin上创建一个最少可能的代码示例repo,但我很挣扎。我使用的是OpenJDK 18.
我尝试过使用和不使用启用存储库注释,id的Int和Integer,多种类型的实体扫描(和没有),但似乎没有任何工作。
实体类:
@Entity
data class SampleEntity(
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
var id: Integer? = null,
var name: String
)
配置类:
@SpringBootApplication
@EntityScan(basePackageClasses = [SampleEntity::class])
@EnableJpaRepositories
class KotlinBootSampleApplication
fun main(args: Array<String>) {
runApplication<KotlinBootSampleApplication>(*args)
}
这里是存储库和提交供参考:
https://github.com/zielinskin/kotlin-boot-sample
32 d5cf311d455eb331b8ddefb9a116f43e662b1c
我也有同样的问题,使用kotlin和Springboot,我使用@EntityScan
和@EnableJpaRepositories
注释解决了这个问题,像这样:
@SpringBootApplication
@EntityScan("base.package.*")
@EnableJpaRepositories("base.package.*")
class BaseApplication