У меня есть настольное приложение Compose с множеством зависимостей, и заставить его работать с Proguard становится КОШМОМ. Без него всё работает, а с Proguard всё ломается. Мне нужно запутать мои личные классы, поэтому Proguard необходим.
После нескольких дней исследований и добавления около 200 строк proguard , приложение запускается, но происходит сбой при использовании jackson и модификации для загрузки и анализа XML, и да, у меня есть много модификаций , json, jackson и т. д.. правила.
Наконец-то я испытываю последнюю надежду — найти способ сообщить proguard НЕ ТРОГАТЬ И НЕ ЗАПУСКАТЬ ЛЮБЫЕ ЗАВИСИМОСТИ, а просто запутывать мой пакет приложения, то есть com.myapp.core, и все содержащиеся в нем подпакеты.
Это что возможный? Как?
Я пробовал, но безрезультатно:
-keep class !com.myapp.core.** { *; }
Это мои зависимости:
commonMain.dependencies {
implementation(compose.runtime)
implementation(compose.foundation)
implementation(compose.material3)
implementation(compose.ui)
implementation(compose.components.resources)
implementation(compose.components.uiToolingPreview)
implementation(libs.androidx.lifecycle.viewmodel)
implementation(libs.androidx.lifecycle.runtime.compose)
implementation(project.dependencies.platform(libs.koin.bom))
implementation(libs.koin.core)
implementation(libs.koin.compose)
implementation(libs.koin.compose.viewmodel.navigation)
implementation(libs.retrofit)
implementation(libs.converter.jackson)
implementation(libs.jackson.module.kotlin)
implementation(libs.jackson.dataformat.xml)
implementation(libs.converter.scalars)
implementation(libs.okhttp)
implementation(libs.androidx.sqlite.bundled)
implementation(libs.androidx.room.runtime)
implementation(libs.navigation.compose)
implementation(libs.datastore.preferences)
}
desktopMain.dependencies {
implementation(compose.desktop.currentOs)
implementation(libs.kotlinx.coroutines.swing)
}
Подробнее здесь: https://stackoverflow.com/questions/793 ... my-package