【问题标题】:Need help to understand error需要帮助来理解错误
【发布时间】:2015-09-16 10:40:11
【问题描述】:

对出了什么问题有任何想法吗?我正在使用 Libgdx

> Error:Execution failed for task ':android:dexDebug'. com.android.ide.common.internal.LoggedErrorException: Failed to run command:     C:\Users\Steven\AppData\Local\Android\sdk\build-tools\build-tools-20.0.0\dx.bat
--dex --no-optimize --output

错误代码: 2 输出:

UNEXPECTED TOP-LEVEL EXCEPTION:
    java.lang.IllegalArgumentException: method ID not in [0, 0xffff]: 65536
        at com.android.dx.merge.DexMerger$6.updateIndex(DexMerger.java:501)
        at com.android.dx.merge.DexMerger$IdMerger.mergeSorted(DexMerger.java:276)
        at com.android.dx.merge.DexMerger.mergeMethodIds(DexMerger.java:490)
        at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:167)
        at com.android.dx.merge.DexMerger.merge(DexMerger.java:188)
        at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:439)
        at com.android.dx.command.dexer.Main.runMonoDex(Main.java:287)
        at com.android.dx.command.dexer.Main.run(Main.java:230)
        at com.android.dx.command.dexer.Main.main(Main.java:199)
        at com.android.dx.command.Main.main(Main.java:103)
>

【问题讨论】:

  • 看起来某些命令运行失败。这是失败的命令:C:\Users\Steven\AppData\Local\Android\sdk\build-tools\build-tools-20.0.0\dx.bat --dex --no-optimize --output

标签: java android libgdx


【解决方案1】:

您遇到了著名的多 dexing 问题,即单个 Dex 文件不能声明超过 65536 个方法。这已经在最新版本的 Android 构建工具中得到了解决,您所要做的就是让您的应用程序引用 MultiDexApplication 并添加:

android {
  defaultConfig {
    ...
    multiDexEnabled = true
  }
}

到您的构建脚本。官方文档中有关于这个问题的更多细节。见Building Apps with Over 65K Methods。

【讨论】:

    猜你喜欢
    • 2018-09-06
    • 2023-04-09
    • 2020-08-06
    • 2018-05-04
    • 1970-01-01
    • 1970-01-01
    • 2011-05-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多