Android開發 使用Room構建數據庫出現RoomDatabase_Impl does not exist問題


可能原因1

使用了kotlin構建了項目,並且使用kotlin編寫room創建數據庫,在build.gradle文件里做如下修改

plugins {
    id 'com.android.library'
    id 'kotlin-android'
    id 'kotlin-android-extensions'
    id 'kotlin-kapt'
}
//略...
dependencies {
    api"android.arch.persistence.room:runtime:$rootProject.room_version"
    kapt"android.arch.persistence.room:compiler:$rootProject.room_version"
}

將annotationProcessor  替換成 kapt,請注意需要導入 id 'kotlin-kapt' 才能使用 kapt

可能原因2

Room 的依賴是寫在工具模塊or公共模塊里,如下:

dependencies {
    api "android.arch.persistence.room:runtime:$rootProject.room_version"
    annotationProcessor "android.arch.persistence.room:compiler:$rootProject.room_version"
}

而主模塊依賴於工具模塊,在主模塊里就沒有寫 Room 的依賴
解決辦法:
在主模塊里添加 Room 的依賴:

dependencies {
   annotationProcessor "android.arch.persistence.room:compiler:$rootProject.room_version"
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM