gpt4 book ai didi

android - 将 androidx.room 打包到 aar 库中的项目导致 java.lang.NoClassDefFoundError : Failed resolution of: Landroidx/room/RoomDatabase

转载 作者:行者123 更新时间:2023-12-05 00:03:34 28 4
gpt4 key购买 nike

这是我在这个资源上没有找到任何解决方案的问题,所以请分享一些知识。我制作了一个可以作为模块正常工作的库。这是它的等级:

def room_version = "2.2.6"
implementation "androidx.room:room-runtime:$room_version"
kapt "androidx.room:room-compiler:$room_version"
implementation "androidx.room:room-ktx:$room_version"
implementation "androidx.room:room-rxjava2:$room_version"

现在,当我将它组装到 AAR 中时,程序崩溃并显示 java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/room/RoomDatabase

当我用谷歌搜索这个问题时,发现这是一个常见问题,解决方案是从 androidx.room 切换到 android.arch.persistence.room。但是那个旧版本没有我正在使用的 room-rxjava2

那么,也许有人知道在 AAR 中使用 androidx.room 而不会崩溃的解决方案?

最佳答案

我们还必须将 room 依赖项添加到应用程序模块(导入 aar 的位置)以支持带有 room-rxJava2 的 androidx.room:

def room_version = "2.3.0"

implementation "androidx.room:room-runtime:$room_version"
annotationProcessor "androidx.room:room-compiler:$room_version"

// To use Kotlin annotation processing tool
kapt("androidx.room:room-compiler:$room_version")

// RxJava2 support for Room
implementation "androidx.room:room-rxjava2:$room_version"

关于android - 将 androidx.room 打包到 aar 库中的项目导致 java.lang.NoClassDefFoundError : Failed resolution of: Landroidx/room/RoomDatabase,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66133537/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com