【问题标题】:com.android.dex.DexIndexOverflowException: Error:Execution failed for task "...\Java\jdk1.7.0_17\bin\java.exe" finished with non-zero exit value 2com.android.dex.DexIndexOverflowException:错误:任务“...\Java\jdk1.7.0_17\bin\java.exe”执行失败,退出值非零 2
【发布时间】:2015-10-14 14:55:27
【问题描述】:

我更新了 Android Studio,然后开始出现此错误。 这是我的依赖项列表:

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.2.0'
compile 'com.nineoldandroids:library:2.4.0'
compile 'com.squareup.picasso:picasso:2.5.0'
compile 'com.google.android.gms:play-services:7.5.0'
compile files('libs/isoparser-1.0.6.jar')
compile files('libs/aspectjrt-1.7.3.jar')
compile 'com.facebook.android:facebook-android-sdk:4.1.2'
compile 'org.twitter4j:twitter4j-core:4.0.3'
compile 'com.amazonaws:aws-android-sdk-s3:2.2.1'
compile 'com.amazonaws:aws-android-sdk-core:2.2.1'
}

这是控制台日志:

UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536
at com.android.dx.merge.DexMerger$6.updateIndex(DexMerger.java:502)
at com.android.dx.merge.DexMerger$IdMerger.mergeSorted(DexMerger.java:277)
at com.android.dx.merge.DexMerger.mergeMethodIds(DexMerger.java:491)
at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:168)
at com.android.dx.merge.DexMerger.merge(DexMerger.java:189)
at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:454)
at com.android.dx.command.dexer.Main.runMonoDex(Main.java:303)
at com.android.dx.command.dexer.Main.run(Main.java:246)
at com.android.dx.command.dexer.Main.main(Main.java:215)
at com.android.dx.command.Main.main(Main.java:106)
Error:Execution failed for task ':app:dexDebug'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_17\bin\java.exe'' finished with non-zero exit value 2

我搜索了其他类似的问题,但没有一个有帮助。我该如何解决? 注意:我在我的 Macbook 上的 Android Studio 上运行了相同的代码,并且代码运行良好。上述问题发生在我更新 Android Studio 的窗口上。

【问题讨论】:

  • 如果我没记错的话,这是超过 dex 大小限制时抛出的错误。检查您的依赖关系,将播放服务分解为您需要的模块。

标签: java android


【解决方案1】:
compile 'com.google.android.gms:play-services:7.5.0'

将其分解为模块: https://developers.google.com/android/guides/setup

您已超出 dex 大小限制

【讨论】:

  • 感谢这个工作。但请参阅我的编辑说明。我在此更改之前检查过。
【解决方案2】:

在 build.gradle 中进行更改

defaultConfig {
        multiDexEnabled true
    }

然后它将开始工作。

【讨论】:

    猜你喜欢
    • 2016-01-01
    • 1970-01-01
    • 2016-02-15
    • 2016-05-31
    • 2016-04-15
    • 1970-01-01
    • 1970-01-01
    • 2018-08-19
    • 2015-08-12
    相关资源
    最近更新 更多