Зависимость конфликт с KTOR между API Gemini и SupabaseAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Зависимость конфликт с KTOR между API Gemini и Supabase

Сообщение Anonymous »

Проблема
Я разрабатываю приложение для Android, в котором используются API Google Gemini (что зависит от KTOR 2.x) и Supabase SDK (который требует KTOR 3.x). При включении обе библиотеки я сталкиваюсь с ошибками разрешения класса из -за противоречивых версий KTOR. < /P>

среда
android Studio Meerkat | 2024.3.1 < /p>
< /li>
kotlin 1.9.x < /p>
< /li>
jetpack compose < /p>
< /li>
target для di < /p>
< /li> 35 < /p>
< /li>
< /ul>
Информация об ошибке
Приложение сбивает с чередующимися ошибками: < /p>
ошибка, связанная с супабазой: < /strong> < /p>

Код: Выделить всё

java.lang.NoClassDefFoundError: Failed resolution of: Lio/ktor/client/HttpClientJvmKt;
at io.github.jan.supabase.network.KtorSupabaseHttpClient.\(KtorSupabaseHttpClient.kt:55)
ошибка, связанная с Gemini: [/b]

Код: Выделить всё

java.lang.NoClassDefFoundError: Failed resolution of: Lio/ktor/client/plugins/HttpTimeout;
at io.ktor.client.engine.okhttp.OkHttpEngine.(OkHttpEngine.kt:40)
at com.google.ai.client.generativeai.common.APIController.
зависимости (build.gradle.kts) kotlin copy // supabase sdk (ktor 3.x):

Код: Выделить всё

implementation(libs.supabase.auth)
implementation(libs.supabase.postgrest)
implementation(libs.supabase.realtime)
implementation(libs.supabase.storage)
implementation(libs.supabase.functions)
< /code>
// Gemini API (Ktor 2.x)
implementation(libs.generativeai)
< /code>
// Explicit Ktor dependencies
implementation(libs.ktor.client.android)
попытки решений
исключенный Ktor из Gemini в Build gradle.kts

Код: Выделить всё

implementation(libs.generativeai) {
exclude(group = "io.ktor")
}
добавлено явные версии KTOR :

Код: Выделить всё

implementation("io.ktor:ktor-client-core:3.1.0")
implementation("io.ktor:ktor-client-okhttp:3.1.0")
// Also tried mixing versions (failed)
implementation("io.ktor:ktor-client-plugins:2.3.7")
routed packagingoptions:
packaging {
resources {
pickFirsts.add("META-INF/INDEX.LIST")
pickFirsts.add("META-INF/io.netty.versions.properties")
excludes.add("META-INF/*.kotlin_module")
}
}
< /code>
Нет разрешить конфликт. Есть ли безопасный способ справиться с основными несоответствиями версий для KTOR?


Подробнее здесь: https://stackoverflow.com/questions/795 ... d-supabase
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»