我在Android Studio中有一个先前已成功导出的项目。但是,我更新了IDE,现在我收到了这个错误:
Error:Execution failed for task ':android:dexRelease'.
com.android.ide.common.internal.LoggedErrorException:无法运行命令: C:\ Users \ Ajay \ Downloads \ android-sdk_r24.4.1-windows \ android-sdk-windows \ build-tools \ 21.0.0 \ dx.bat -JXmx4g --dex --force-jumbo --output C:\用户\ Ajay \ Downloads \ jetpack(1)\ JetPack \ game \ android \ build \ intermediates \ dex \ release --input-list = C:\ Users \ Ajay \ Downloads \ jetpack(1)\ JetPack \ game \ android \建立\中间体\ tmp目录\ DEX \发布\ inputList.txt 错误代码: 2 输出: 意外的顶级例外情况: com.android.dex.DexIndexOverflowException:方法ID不在[0,0xffff]中:65536 在com.android.dx.merge.DexMerger $ 6.updateIndex(DexMerger.java:502) 在com.android.dx.merge.DexMerger $ IdMerger.mergeSorted(DexMerger.java:277) 在com.android.dx.merge.DexMerger.mergeMethodIds(DexMerger.java:491) 在com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:168) 在com.android.dx.merge.DexMerger.merge(DexMerger.java:189) 在com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:454) 在com.android.dx.command.dexer.Main.runMonoDex(Main.java:302) 在com.android.dx.command.dexer.Main.run(Main.java:245) 在com.android.dx.command.dexer.Main.main(Main.java:214) 在com.android.dx.command.Main.main(Main.java:106)
以前,我在使用Google Play服务时遇到错误。所以我把我的.build文件编辑为:
dependencies {
compile 'com.android.support:appcompat-v7:22.2.0'
compile 'com.android.support:support-v4:22.0.0'
compile 'com.google.android.gms:play-services:7.8.0'
.build文件之前的位置如下:
dependencies {
compile 'com.android.support:appcompat-v7:22.2.0'
compile 'com.android.support:support-v4:22.0.0'
compile 'com.google.android.gms:play-services:+'
我不需要在更新之前编辑我的.build文件,所以我不确定是什么问题。有什么想法吗?
答案 0 :(得分:0)
我认为问题与您的混淆工具Dexguard有关。尝试删除它并重新构建。我不熟悉Dexguard,但在Proguard中,如果在构建时删除了这些类,则使用-keep保留所需的类。
答案 1 :(得分:0)