Ошибка минификации R8 после обновления до Jetpack Compose BOM 2024.06.00 с миграцией SDK 34Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Ошибка минификации R8 после обновления до Jetpack Compose BOM 2024.06.00 с миграцией SDK 34

Сообщение Anonymous »

Недавно я обновил свой проект с Compose BOM 2023.06.01 до 2024.06.00 после перехода на SDK 34. Хотя отладочная сборка работает нормально, выпускная сборка завершается сбоем на этапе минификации R8 с несколькими ошибками META-INF из Compose, за которым последовала ошибка «класс определен несколько раз» в модуле динамических функций.
Чтобы устранить ошибки META-INF, я исключил проблемные файлы из своего динамического Feature-модуль, который требовал индивидуального добавления всех исключений:
Dynamic Feature build.gradle:

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

implementation(project(path: ':mobile')) {
exclude group: "com.russhwolf"
exclude group: "androidx.compose.*"
exclude group: "androidx.compose.material3"
exclude group: "androidx.compose.material"
exclude group: "androidx.compose.animation"
exclude group: "androidx.compose.foundation"
exclude group: "androidx.compose.ui"
exclude group: "androidx.compose.runtime"
exclude group: "androidx.collection.ArrayMap"
}
После добавления этих исключений я столкнулся с новой ошибкой:

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

AGPBI: {"kind":"error","text":"Type androidx.collection.ArrayMap$EntrySet is defined multiple times: /APP-android/mobile/build/intermediates/module_and_runtime_deps_classes/standard_charlesRelease/mergeStandard_charlesReleaseClasses/base.jar:androidx/collection/ArrayMap$EntrySet.class, /APP-android/dynamicFeature/build/intermediates/module_and_runtime_deps_classes/standard_charlesRelease/mergeStandard_charlesReleaseClasses/feature-alt_acco.jar:androidx/collection/ArrayMap$EntrySet.class","sources":[{"file":"/APP-android/mobile/build/intermediates/module_and_runtime_deps_classes/standard_charlesRelease/mergeStandard_charlesReleaseClasses/base.jar"}],"tool":"R8"}
Среда:
  • Версия Gradle: 8.3.0
  • AGP: 8.4
  • Kotlin: 1.9.22
  • Целевой SDK: 34
Эта ошибка появилась только после обновления Compose, хотя ArrayMap не является частью Compose. Приложение работало нормально после перехода на SDK 34 и до обновления Compose.
Вопросы:
  • Почему это так? появляется ошибка после обновления до Compose BOM 2024.06.00?
  • Как решить проблему «Тип определен несколько раз» в сборке выпуска?
  • Если это конфликт версий библиотеки, как определить, какая версия вызывает проблему?
Будем благодарны за любую помощь!

Подробнее здесь: https://stackoverflow.com/questions/787 ... 0-with-sdk
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Карты и проблема минификации (Teavm JS и Java)
    Anonymous » » в форуме JAVA
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Карты и проблема минификации (Teavm JS и Java)
    Anonymous » » в форуме JAVA
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Карты и проблема минификации (Teavm JS и Java)
    Anonymous » » в форуме JAVA
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Android saxparserfacotry.newinstance () бросает исключение при включении минификации
    Anonymous » » в форуме Android
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Я получаю нерешенную ссылку на модификатор SharedElement на Android Studio. Я использую Compose Bom 2025.06.00, а моя ве
    Anonymous » » в форуме Android
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous

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