Android的工作室 - 意外的顶级例外: [英] Android Studio - UNEXPECTED TOP-LEVEL EXCEPTION:

查看:303
本文介绍了Android的工作室 - 意外的顶级例外:的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经建立在Android的Studio中使用作为工具的一部分,新的项目模板的新项目。所有code已经产生由Studio我还没有作出任何修订呢。

我试图运行code,但应用程序失败,出现以下错误,不知道是什么问题,因此任何帮助AP preciated。

 意外的顶级例外:
com.android.dex.DexException:多DEX文件定义Landroid /支持/ V7 / APP /动作条$回调;
    在com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594)
    在com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552)
    在com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533)
    在com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170)
    在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)

 失败

失败:建立失败,一个例外。

* 什么地方出了错:
执行失败的任务:应用程序:dexDebug。
> com.android.ide.common.internal.LoggedErrorException:无法运行命令:
    C:\ Users \用户RichardKavanagh \应用程序数据\本地\机器人\ Android的SDK \集结工具\ 19.0.1 \ dx.bat --dex  - 输出D:\机器人\项目\ MyHealthRecord \程序\建立\库\程序-debug.dex D:\机器人\项目\ MyHealthRecord \程序\建立\类\调试D:\机器人\项目\ MyHealthRecord \程序\编译\依赖缓存\调试D:\Android\Projects\MyHealthRecord\app\build\$p$p-dexed\debug\android-support-v7-appcompat-5a78dab7e2789bbe64f4bc80d106ca75c04dcf6f.jar D:\Android\Projects\MyHealthRecord\app\build\$p$p-dexed\debug\classes-f9b947272e9f33ba50355b52d82755584f9c0c58.jar D:\Android\Projects\MyHealthRecord\app\build\$p$p-dexed\debug\support-v4-19.0.0-31a2c13df80d37d62ca50fec3bde6da0ca706223.jar
错误code:
    2
输出:

    意外的顶级例外:
    com.android.dex.DexException:多DEX文件定义Landroid /支持/ V7 / APP /动作条$回调;
        在com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594)
        在com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552)
        在com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533)
        在com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170)
        在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)



* 尝试:
与--stacktrace选项获取堆栈跟踪运行。与--info或--debug选项运行,以获得更多的日志输出。

构建失败

总时间:12.948秒
 

解决方案

像其他人一样在这里说,该支持库( com.android.support )被收录更多不止一次在您的项目。尝试在根级在 build.gradle 补充这一点,它应该通过其他项目的依赖被排除出口的支持库。

 配置{
    所有* .exclude组:com.android.support',模块:支持-V4
}
 

如果您有更多的则包括在像这样的一个依赖项支持库,您可能要删除其中的一个:

I have built a new project in Android Studio using the new project templates provided as part of the tool. All of the code has been generated by Studio I have not made any amendments yet.

I am attempting to run the code but the app fails with the following errors, not sure what the problem is so any help appreciated.

UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Landroid/support/v7/app/ActionBar$Callback;
    at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594)
    at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552)
    at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533)
    at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170)
    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)

 FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:dexDebug'.
> com.android.ide.common.internal.LoggedErrorException: Failed to run command:
    C:\Users\RichardKavanagh\AppData\Local\Android\android-sdk\build-tools\19.0.1\dx.bat --dex --output D:\Android\Projects\MyHealthRecord\app\build\libs\app-debug.dex D:\Android\Projects\MyHealthRecord\app\build\classes\debug D:\Android\Projects\MyHealthRecord\app\build\dependency-cache\debug D:\Android\Projects\MyHealthRecord\app\build\pre-dexed\debug\android-support-v7-appcompat-5a78dab7e2789bbe64f4bc80d106ca75c04dcf6f.jar D:\Android\Projects\MyHealthRecord\app\build\pre-dexed\debug\classes-f9b947272e9f33ba50355b52d82755584f9c0c58.jar D:\Android\Projects\MyHealthRecord\app\build\pre-dexed\debug\support-v4-19.0.0-31a2c13df80d37d62ca50fec3bde6da0ca706223.jar
Error Code:
    2
Output:

    UNEXPECTED TOP-LEVEL EXCEPTION:
    com.android.dex.DexException: Multiple dex files define Landroid/support/v7/app/ActionBar$Callback;
        at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594)
        at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552)
        at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533)
        at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170)
        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)



* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 12.948 secs

解决方案

Like everyone else said here, the support library (com.android.support) is being included more than once in your project. Try adding this in your build.gradle at the root level and it should exclude the support library from being exported via other project dependencies.

configurations {
    all*.exclude group: 'com.android.support', module: 'support-v4'
}

If you have more then one support libs included in the dependencies like this, you may want to remove one of them:

这篇关于Android的工作室 - 意外的顶级例外:的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆