报错信息如下:
Error:Execution failed for task ':app:transformClassesWithPreDexForRelease'. > com.android.build.api.transform.TransformException: java.lang.RuntimeException: java.lang.RuntimeException: Unable to pre-dex 'F:\ProgramFiles\sczg\app\libs\glide-3.6.1.jar' to 'F:\ProgramFiles\sczg\app\build\intermediates\transforms\preDex\release\6.jar'
Error:Execution failed for task ':app:transformClassesWithPreDexForRelease'. > com.android.build.api.transform.TransformException: java.lang.RuntimeException: java.lang.RuntimeException: Unable to pre-dex 'F:\ProgramFiles\sczg\app\libs\httpcore-4.2.4.jar' to 'F:\ProgramFiles\sczg\app\build\intermediates\transforms\preDex\release\8.jar'
Error:Execution failed for task ':app:transformClassesWithDexForRelease'. > com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: Error while executing java process with main class com.android.dx.command.Main with arguments {--dex --num-threads=4 --multi-dex --main-dex-list F:\ProgramFiles\sczg\app\build\intermediates\multi-dex\release\maindexlist.txt --output F:\ProgramFiles\sczg\app\build\intermediates\transforms\dex\release\0 --min-sdk-version 11 F:\ProgramFiles\sczg\app\build\intermediates\transforms\jarMerging\release\0.jar}
百度了各种信息说是方法数超了,大多数解决方法如下:
builder.gradle 下添加 defaultConfig {
.....multiDexEnabled true
.....
}
但是不解决问题。搜索studio3.0升级的问题,也搜不到这个相关的错误。
精疲力尽的折腾了一天,到最后用3.0.1重新建了个工程把代码复制过去了。用studio3.0.1新建的项目用之前的签名文件,打包没有问题。
过后几天发现之前的项目签名打包又不报错了,心中一万个草泥马,我电脑本身性能太差,可能由于缓存等等等的问题,造成了那天的报错。因更换升级开发工具 重构 是不得已而为之,但又是最终能有效解决问题的办法。