Android - 在 Android Studio 2.3.3 下配置 Room ,出错解决

开发环境

Android Studio 2.3.3 
Gradle Tools  2.3.3 
Gradle 3.3 - all

原因

配置 Room 时,编译出下面错误:

Error:Execution failed for task ':app:compileDebugJavaWithJavac'.
> kotlin.jvm.internal.FunctionReference.(ILjava/lang/Object;)V

基本配置

kapt {
   generateStubs true
}
dependencies{
    ...
    compile libs.room_runtime
    kapt libs.room_compiler
    compile libs.room_rxjava
}

出错!!!

解决

// 添加
apply plugin: 'kotlin-kapt' 
// 删除
kapt {
   generateStubs true
}

依赖改为 :

"org.jetbrains.kotlin:kotlin-stdlib:$versions.kotlin_version"

配置配置的 kotlin 环境为

// 不使用这个
"org.jetbrains.kotlin:kotlin-stdlib-jre7:$versions.kotlin_version"

打包混淆出错

Please correct the above warnings first

原因

room 打包时太多警告,导致不能完成打包;

解决

proguard-rules.pro 中添加

-dontwarn android.arch.persistence.**

参考

kotlin.jvm.internal.FunctionReference与Kotlin-kapt插件使用

kotlin kapt error

kotlin kapt 官网

你可能感兴趣的:(android开发经验)