Kotlin使用DefaultLifecycleObserver报错

 Super calls to Java default methods are prohibited in JVM target 1.6. Recompile with '-jvm-target 1

这个是我在kotlin中使用DefaultLifecycleObserver的时候的报错。平时没怎么注意,然后搜了一圈才发现我的kotlin的jvm是1.6.我们把它改成1.8就可以了,报错是因为我们的DefaultLifecycleObserver必须要用用jdk8。具体解决步骤:

1、Flie-->Settings-->other Settings-->kotlin Compiler -->kotlin to JVM -->target JVM Version 下拉选择1.8

 

 

2、在app的build.gradle中加入配置,注意是在android下哟

 compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
 kotlinOptions {
        jvmTarget = '1.8'
    }

上面那个是控制java的,下面的是kotlin的,但是两个都要设置上,不然老版本的kotlin是会报错的

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章