【问题标题】:Android studio error code 2 UNEXPECTED TOP-LEVEL EXCEPTION: [duplicate]Android Studio 错误代码 2 UNEXPECTED TOP-LEVEL EXCEPTION: [重复]
【发布时间】:2014-08-22 10:48:51
【问题描述】:

当我尝试将导入的 android 应用程序编译到我的 android studio 时遇到问题。

我哪里错了?

错误:任务 ':freshIM:dexDebug' 执行失败。

com.android.ide.common.internal.LoggedErrorException:无法运行命令: /Users/Manuel/Desktop/Android/android-sdk-macosx/build-tools/19.1.0/dx --dex --num-threads=4 --output /Users/Manuel/Desktop/Android/android-sdk- macosx/samples/FreshIM2/freshIM/build/intermediates/dex/debug /Users/Manuel/Desktop/Android/android-sdk-macosx/samples/FreshIM2/freshIM/build/intermediates/classes/debug /Users/Manuel/Desktop/ Android/android-sdk-macosx/samples/FreshIM2/freshIM/build/intermediates/dependency-cache/debug /Users/Manuel/Desktop/Android/android-sdk-macosx/samples/FreshIM2/freshIM/build/intermediates/pre- dexed/debug/classes-1ae19b3a0bf802319e9e1b28ae0be5de00ebab02.jar /Users/Manuel/Desktop/Android/android-sdk-macosx/samples/FreshIM2/freshIM/build/intermediates/pre-dexed/debug/classes-538c6f1f64ea511ecd44305c634b96桌面/Android/android-sdk-macosx/samples/FreshIM2/freshIM/build/intermediates/pre-dexed/debug/classes-e107340d2d8eacb08585848b04409e8a30f816a9.jar /Users/Manuel/Desktop/Android/android-sdk-macosx/samples/FreshIM2/新鲜IM/构建/中间件/pre-dexed/debug/classes-fdf9350bdef43c6dfdaf1b1f8b6b5aaab33daaf3.jar /Users/Manuel/Desktop/Android/android-sdk-macosx/samples/FreshIM2/freshIM/build/intermediates/pre-dexed/debug/sdk-1.0.1- 830f4db143977ad24a452c5380e08f90b9a646a4.jar /Users/Manuel/Desktop/Android/android-sdk-macosx/samples/FreshIM2/freshIM/build/intermediates/pre-dexed/debug/support-v4-19.1.0-421813bd2bfef7jar9f908cde82fdc0839 错误代码: 2 输出: 意外的顶级异常: java.lang.IllegalArgumentException:方法 ID 不在 [0, 0xffff] 中:65536 在 com.android.dx.merge.DexMerger$6.updateIndex(DexMerger.java:501) 在 com.android.dx.merge.DexMerger$IdMerger.mergeSorted(DexMerger.java:276) 在 com.android.dx.merge.DexMerger.mergeMethodIds(DexMerger.java:490) 在 com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:167) 在 com.android.dx.merge.DexMerger.merge(DexMerger.java:188) 在 com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:439) 在 com.android.dx.command.dexer.Main.runMonoDex(Main.java:287) 在 com.android.dx.command.dexer.Main.run(Main.java:230) 在 com.android.dx.command.dexer.Main.main(Main.java:199) 在 com.android.dx.command.Main.main(Main.java:103)

【问题讨论】:

标签: android android-studio error-code


【解决方案1】:

每个应用程序只能有 65536 个方法。

Dalvik VM 每个 dex 文件最多可以有 65536 个方法

试试这个链接来解决这个问题 http://android-developers.blogspot.co.il/2011/07/custom-class-loading-in-dalvik.html

根据官方博客“大应用程序可以包含超过64K的方法引用,这是一个dex文件支持的最大数量。为了绕过这个限制,开发者可以将部分程序分成多个二级dex 文件,并在运行时加载它们。”

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-30
    • 2014-08-12
    • 2015-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多