如题,发现启动时报错,application.kt如下
@SpringBootApplication
class Application
fun main(args: Array<String>){
SpringApplication.run(Application::class.java, *args)
}
报错原因是因为kotlin中所有类和方法默认都是final的,不能直接继承或重写,而@SpringBootApplication注解中用到@Configuration所以类不可以是final类型,这就导致报错
一种方法是添加open
open class Application
另一种是在build.gradle中增加配置,Kotlin 1.0.6 提供了 kotlin-spring 插件,推荐使用这种
buildscript {
dependencies {
classpath "org.jetbrains.kotlin:kotlin-allopen:$kotlin_version"
}
}
apply plugin: 'kotlin-spring'