错误:将字节码转换为索引时出错:原因:com.android.dex.DexException:--主索引列表中的类太多



我正在尝试生成我的应用程序的签名apk,我收到以下错误

错误:将字节码转换为dex时出错:原因:com.android.dex.DexException:--主索引列表中的类太多,主索引容量超过

错误:任务":app:transformClassesWithDexForRelease"的执行失败。com.android.build.api.transform.TransformException:com.android.ide.common.prrocess.ProcessException:java.util.courrent.ExecutionException:com.ndroid.ide.com.cn.prrocess.PprocessException:使用主类com.android.dx.command.main with arguments执行java进程时出错{--dex--force jumbo--num threads=4--multi-dex--main dex list C:\Users\user\Desktop\Mystuff\GetALifFitness\WonderStree Production\app\build\intermediates\multi-dex\release\maindexlist.txt--output C:\Users\user\Deskt\Mystuf\GetALifeFitness\WanderStree Production\app\build\intermediates\transforms\proguard\release\jars\3\1f\main.jar}

我已经从这个链接尝试了一些解决方案--主索引列表中的类太多,超出了主索引的容量,但它对我不起作用。你们能告诉我可能出了什么问题吗?或者给我提供解决方案?非常感谢。

我已经尝试过了-这就是我的proguard文件的样子:

-keepclassmembers class toan.android.floatingactionmenu.FloatingActionsMenu$RotatingDrawable { void set*(***);   *** get*(); }
-ignorewarnings
-keep class * {    public private *; }
-dontwarn okio.**
-keep public class com.google.android.gms.* { public *; }
-dontwarn com.google.android.gms.**
-dontwarn com.mixpanel.**

我添加的build.gradle文件:

dexOptions {
javaMaxHeapSize "4g"
keepRuntimeAnnotatedClasses false
}

此外,我删除了不需要的库。然而,这个问题并没有得到解决。

我通过从build.gradle文件中删除这一行解决了这个问题

multiDexKeepProguard文件('proguard-rules.pro')

这就是我的build.gradle文件现在的样子

buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
ext.enableCrashlytics = true
}
}

最新更新