我在阅读集合时遇到 ClassNotFoundException。我已经在 gradle 文件中添加了所有需要的依赖项。我使用自定义令牌进行了登录过程。
下面提到了我遇到的异常 -
Caused by: java.lang.ClassNotFoundException: Didn't find class "dev.gitlive.firebase.DecodersKt"
这是共享模块gradle依赖项
val commonMain by getting {
dependencies {
implementation(libs.kotlinx.coroutines.core)
implementation(libs.ktor.client.core)
implementation(libs.ktor.client.content.negotiation)
implementation(libs.ktor.serialization.kotlinx.json)
implementation(libs.ktor.client.logging)
implementation(libs.koin.core)
implementation(libs.sql.coroutines.extensions)
implementation(libs.firebase.firestore)
implementation(libs.firebase.common)
implementation(libs.kotlinx.serialization.json)
implementation(libs.firebase.auth) }
}
这些是 Android 模块依赖项。
dependencies {
implementation(projects.shared)
implementation(libs.compose.ui)
implementation(libs.compose.ui.tooling.preview)
implementation(libs.compose.material3)
implementation(libs.androidx.activity.compose)
implementation(libs.androidx.appcompat)
implementation(libs.androidx.constraintlayout)
implementation(libs.material)
implementation(libs.androidx.lifecycle.livedata.ktx)
implementation(libs.androidx.lifecycle.viewmodel.ktx)
implementation(libs.androidx.navigation.fragment.ktx)
implementation(libs.androidx.navigation.ui.ktx)
debugImplementation(libs.compose.ui.tooling)
implementation(libs.koin.android)
implementation(platform(libs.google.firebase.bom))
implementation(libs.firebase.common.ktx)
implementation(libs.google.firebase.common)
}
下面是我在调用signInWithCustomToken()后尝试读取集合的代码行-
tokenResponse = auth.signInWithCustomToken(customtoken)
val response = firestore.collection("collectionPath")
.document("documentPath").get().data(MyDataClass.serializer())
println("response... $response")
//Exception
Caused by: java.lang.ClassNotFoundException: Didn't find class "dev.gitlive.firebase.DecodersKt"
请建议是否有人遇到此问题或解决此问题的解决方法。
这是图书馆链接 - https://firebaseopensource.com/projects/gitliveapp/firebase-kotlin-sdk/
根据我所看到的,您应该只访问
dev.gitlive.firebase.internal.decode
,除非您使用的是更旧版本的依赖项。 该 dev.gitlive.firebase.DecodersKt
文件自第 1 版以来一直没有到位。他们的 SDK 目前使用的是 2.1.0
版本。
您的依赖版本是最新的吗?