2014-12-07 77 views
2

我尽我所能从intelij导入了一个项目,我得到了这个很长的错误,我无法理解。我试图做一个“无效并重新启动”并得到相同的错误。我不知道如果我的任何构建文件与这个错误有关,如果你有一个建议让我知道,我会更新它。Android Studio 1.0 RC 4构建错误

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

com.android.ide.common.internal.LoggedErrorException: Failed to run command: C:\Users\Nick\AppData\Local\Android\android-sdk\build-tools\20.0.0\dx.bat --dex --no-optimize --output C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\dex\debug C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\classes\debug C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\pre-dexed\debug\support-annotations-21.0.2-0a182725e9aa175cb2c9765c57055aaa824304e6.jar C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\pre-dexed\debug\picasso-2.1.1-ca3ca17668b6992af9c01975b92b9bf572784f6a.jar C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\pre-dexed\debug\libGoogleAnalyticsV2-767507628f16b98644c7df4c6626869f426ce4e7.jar C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\pre-dexed\debug\internal_impl-21.0.2-a8cad4df1b726255aab2a982204a5f72da2f18c3.jar C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\pre-dexed\debug\amazon-ads-5.4.46-736982c75f8a8e92a0ad571df866edd9f053f48a.jar C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\pre-dexed\debug\android-support-v4-570a9308b85abcb60e3a8fe6408341585e0080ba.jar C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\pre-dexed\debug\classes-886dcf9785070a0ce74d9b194160c2ed98e7f5a6.jar C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\pre-dexed\debug\android-support-v7-47c2bab1cd06319a40ed131420476fad110b3621.jar C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\pre-dexed\debug\classes-cde05798e7e54ac95eab6032df408c4025bb501c.jar C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\pre-dexed\debug\libGoogleAnalyticsServices-4179946d7621a48fc3cc005840f233ec074f4ad9.jar C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\pre-dexed\debug\classes-e97fdf43369bbf65731abaad5e4fd840d08f90a7.jar Error Code: 2 Output: UNEXPECTED TOP-LEVEL EXCEPTION: com.android.dex.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompatIcs; 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)

改变构建工具来21.1.1导致此错误:

错误:执行失败的任务 ':应用程序:dexDebug'。

com.android.ide.common.internal.LoggedErrorException: Failed to run command: C:\Users\Nick\AppData\Local\Android\android-sdk\build-tools\21.1.1\dx.bat --dex --no-optimize --output C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\dex\debug --input-list=C:\Users\Nick\AndroidStudioProjects\NameThatPlaneQuiz\app\build\intermediates\tmp\dex\debug\inputList.txt Error Code: 2 Output: UNEXPECTED TOP-LEVEL EXCEPTION: com.android.dex.DexException: Multiple dex files define Lcom/google/analytics/tracking/android/AnalyticsClient; at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596) at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554) at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535) at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171) 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:302) at com.android.dx.command.dexer.Main.run(Main.java:245) at com.android.dx.command.dexer.Main.main(Main.java:214) at com.android.dx.command.Main.main(Main.java:106)

+0

你的依赖是什么?尝试从根项目目录中的命令行运行'gradlew.bat androidDependencies'。 – ianhanniballake 2014-12-08 00:20:06

+0

我在“项目结构”对话框中添加了包含在.jar文件中的3个库。在我在顶部导入.jar文件时创建的模块的build.gradle文件中,它显示“此文件夹不属于gradle项目,请确保它已在Settings.gradle中注册”。在我的Settings.gradle文件中,它说每个模块都包含'...'。 – ez4nick 2014-12-08 00:29:46

+0

建议:下载最新的编译工具(21.1.1)。你使用20.0.0。 – 2014-12-08 00:38:15

回答

0
com.android.dex.DexException: Multiple dex files define 
com/google/analytics/tracking/android/AnalyticsClient 

该错误是由于含有谷歌分析库中的多个依赖(罐,AARS,或项目)。这可能是因为:

  1. 有时中间编译文件得到一个奇怪的/糟糕的状态,特别是如果你正在调整相关性或改变你的构建工具不用清洗。转到Build-> clean项目,或运行`./gradlew clean',然后尝试再次构建。
  2. 您引用同一个库两次(例如,您包括Google Analytics jar,并且您正在使用gradle/maven工件)。删除一个或另一个。
  3. 最不可能 - 两个不同的图书馆/依赖项实际上包含Google Analytics。您可以手动检查jar/aar文件,通过使用像JD-GUI这样的实用程序来查看它们包含的软件包,或者更容易地在项目的build文件夹(通常为build/intermediates)中查看Android Studio中的Android Studio,以查看是否有重复的条目对于您发布的错误中引用的包。

如果#1不起作用,我会开始审计所有项目的依赖关系。一般来说,我远离项目结构对话框,只需手动编辑.gradle文件。我建议在您的问题中添加.gradle文件的编辑版本。

+0

这肯定是分析库的一个问题,因为我从依赖关系中删除了所有分析库,并将所有引用注释掉,现在一切正常。 – ez4nick 2014-12-08 01:21:49

+0

如果您还将Google Play服务列为依赖项,则可以参考内置的Google Analytics版本,我相信这是最新版本。也就是说,新版本可能需要重新编码,无论您使用什么。 – 2014-12-08 01:26:26

相关问题