Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/216.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法执行dex:多个dex文件定义_Java_Android - Fatal编程技术网

Java 无法执行dex:多个dex文件定义

Java 无法执行dex:多个dex文件定义,java,android,Java,Android,我知道这个问题以前在这里被问过好几次。但我还没有看到任何可能的解决办法。 在我让项目“作为Android应用程序运行”之前,如果我不清理它,我会收到以下错误,必须重新启动Eclipse。。。再洗一次 Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/jstun/core/attribute/MessageAttributeInterface; com.js

我知道这个问题以前在这里被问过好几次。但我还没有看到任何可能的解决办法。 在我让项目“作为Android应用程序运行”之前,如果我不清理它,我会收到以下错误,必须重新启动Eclipse。。。再洗一次

Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define
     Lcom/jstun/core/attribute/MessageAttributeInterface;
com.jstun.core。。。是我的src文件夹的一部分,当然我不能删除它。即使我删除了该包,另一个包也会显示为错误,如:

Unable to execute dex: Multiple dex files define
     Landroid/support/v4/app/ActivityCompatHoneycomb;
自从更新到ADT15后,我就看到了这个错误,我在Ubuntu上使用EclipseGalileo 你知道吗?谢谢你的回复

这是一个生成路径问题

确保生成路径中不包含bin文件夹

右键单击项目->转到属性->构建路径

确保蜂巢库位于您的libs/文件夹中,而不是源文件夹中

将libs/中的库分别包含在生成路径中

顺便说一句,您可能希望引入android-support-v4库来获得冰淇淋三明治支持,而不是蜂巢支持库


我今天遇到了一个类似的错误,原因是我的应用程序项目使用的两个库项目引用了支持库,但版本不同

详情如下: 我的应用程序依赖于2个库项目

FaceBookSDK 3.0->它引用了android-support-v4 ActionBarSherlock->它引用的是android-support-v4,但修改后的版本支持地图。
为了解决这个问题,我不得不让FaceBookSDK库依赖于ABS库,而不是直接依赖于支持库

我将把这个答案留给和我一样陷入这种情况的人

在注意到我错误地将Support Library JAR文件拖放到我的src文件夹中之前,我到处都绊倒了。因为我不知道它是怎么发生的,也不知道我是什么时候把它扔到那里的,所以我无法想象那里出了什么问题


我得到了同样的错误,我发现问题后,一段时间,并删除它。项目现在运行良好。

如果你们中的一些人在使用facebook connent plugin for phonegap时遇到这个问题


尝试删除bin/class/com/facebook/android目录中的文件!->重建

我在项目中也遇到了这个问题。AVD无法重新加载资源、库、资源等文件夹上下文。 问题: Dex Loader]无法执行Dex:多个Dex文件定义Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImpl

然后,我创建了新项目,并复制了MainActivity.java、activity_main.xml和可绘制上下文。 然后从包explore中删除旧项目,重新启动Eclipse和AVD。 我的项目现在运行正常
我希望这些步骤能帮助你们这些小家伙

在我的应用程序项目中,我引用了Eclipse工作区中的库项目(在我的例子中是Facebook SDK),同时将Facebook SDK作为jar包含在libs文件夹中时,发生了这个错误。删除库引用但将jar保留在libs文件夹中会删除错误。

对我来说,解决方案就是执行以下操作:

->项目中的lib目录,并删除任意多个元素。 项目->属性->Java构建路径和删除任何依赖项库都是自动添加的,而不是由您添加的!->申请 重新启动EclipseIDE 现在清理项目。 在项目的设备/模拟器上运行/调试。。。 祝你好运
对我来说,我删除了libs文件夹中名为android support v4.jar的文件,一切都解决了。Goodluck:

我出现这个错误还有另一个原因。我错误地添加了v4和v13支持库。这对我来说是不必要的,因为我的版本是15


我修复了它,只包括v13支持库。另外,确保选中eclipse中导出的库构建路径中的库。我还将它移到了顶部。

正如其他人所提到的,当您的构建路径或设置中的其他地方有同一类的多个副本时,就会发生这种情况

我已经将android-support-v4.jar添加到我的libs/文件夹中,而eclipse不知何故将第二个副本添加到bin/classes/android-support-v4.jar中

您可以使用

grep-r yourningclassname YourApp | grep jar


删除bin/classes中的额外副本解决了这个问题-不确定Eclipse为什么在那里制作副本。

我也有同样的问题,我尝试的是:

列表项 打开项目构建路径, 选择“库”选项卡, 删除除Android库之外的所有库 添加所有必需的JARs文件, 完成了!
这对我很有效,谢谢。

即使我已经回答了多个问题,也没有一个解决方案对我有效

我从构建路径中删除了Android依赖项。 将所有jar文件再次添加到构建路径中,错误就消失了。
不知何故,eclipse似乎在缓存这些东西。

我也遇到了同样的错误,每次我修复它时,它都会在我休息后返回 日食

首先,正如其他人所说,确保项目周围没有同一个.jar文件的多个副本

在我的例子中,我有一个使用ActionBarSherlock和其他库项目的主项目。对我有效的技巧是进入ActionBarSherlock->Properties->Java构建路径->导出顺序和取消选择Android私有库。然后进入Project->Clean,现在您应该能够正确地构建项目

现在,出于某种原因,每次我重新启动Eclipse时,它都会自动启用该复选框,因此我必须再次重复此过程


希望这能帮助一些迷失的灵魂:

以防其他人像我一样在这个问题上大发雷霆:


我的案子涉及一系列图书馆项目。只需在所有库上清理一个项目就可以修复所有问题,只需转到项目属性>>Java构建路径>>排序并导出即可。取消选中所有外部库,如下图所示。这对我有用。希望这有帮助


我也有同样的问题。我不得不删除.apk文件,然后它就工作了。

我在eclipse中找到了以下解决方案……希望它对您有用:

Right click on the Project Name

Select Java Build Path, go to the tab Order and Export

Unchecked your .jar library's

当同一个库多次添加到项目中时,就会出现此问题。如果您没有多次有意添加库,请查看您在项目中添加的库的依赖项/专用库,它们很可能已经包含导致此冲突的库。

我最初的问题是:

无法执行dex:java.nio.BufferOverflowException。检查Eclipse日志中的堆栈跟踪

1我右键单击我的项目->Android工具->添加支持库 运行我的应用程序…无法运行,所以我继续运行。。。 2再次右键单击我的项目->属性->Android->检查项目构建目标上的Android 4.1.2 16 再次运行应用程序…并获取以下信息:

无法执行dex:多个dex文件定义Landroid/support/v4/app/backbackbackstate

3所以我转到项目的lib文件夹,删除旧的Android.support.library.jar 运行应用程序,交叉手指,然后

“它起作用了


希望它能帮助别人…谢谢大家

我也在努力寻找这个问题。在我的例子中,所发生的事情是在将apk复制到电子邮件拖放时发生的——由于错误,apk被粘贴到其中一个包的src文件夹中。
从源文件夹中删除apk后,它工作正常。

我在Intellij中遇到了这个问题,这是因为我添加到项目中的ActionBarSherlock库将android-support-v4.jar定义为编译依赖项,并且这个jar已经包含在我的项目中,因此在编译时有多个副本/版本的DEX


解决方案是将此jar的ActionBarSherlock模块依赖项更改为运行时依赖项,而不是编译依赖项,因为我的项目已经提供了它。

转到项目/属性和Java构建路径并取消选中Android私有库

我遇到了这个问题,但这并不意味着,同一个库被多次加载,但系统试图同时加载具有相同名称和可能相同包名的类,即

com.pack1.de和library1.jar的类几何体 还有一个

com.pack1.de和library2.jar的类几何体。 你应该如何处理? 您应该分析正在使用哪些方法,library1.jar或library2的方法

有两种解决方案

重命名packagename,然后dalvik解释它们是不同的类 或者如果你想冒险,清除这个类,它不包含我们真正使用的methode。
我希望这已经澄清了这个经常被问到的问题。

对我来说,问题是,我之前添加了一个lib projectautobahn lib,后来切换到同一个库的Jar文件。虽然我删除了对旧库项目的引用,但我遇到了这个错误。 根据这里的所有答案,我检查了构建路径等,但我没有手动将这些lib添加到构建路径。所以我没有什么东西可以搬走。 终于找到了这个文件夹

bin/dexedLibs


我注意到有两个同名的jar文件对应于导致冲突的autobahn Android。因此,我删除了dexedLibs文件夹中的所有jar文件,并重建了项目。这就解决了这个问题。

我从构建路径中删除了Android依赖项,它起了作用。

对我来说,我从lib文件夹中删除了Android-support-v4.jar,也从构建路径中删除了它。

添加了无数其他潜在的源。。。我已经更新了项目lib文件夹中的所有库,但是Eclipse帮助重新安装了所有原始库。Eclipse中不再有对这些库的任何引用,但是外部dex maker程序只是获取了lib目录中的所有文件,从而获得了几个library.jar文件的两个版本

git status识别了这些新文件,git clean-f在 或者我,虽然我有时不得不在Windows上等待或重新启动Eclipse,因为它仍然可以从副本打开文件

右键单击项目并转到构建路径>配置构建路径 选择库选项卡,单击support-v4库,然后单击删除 点击OK
然后清理您的项目并运行它将正常工作:-

超简单解决方案和最佳解决方案:

删除右键单击主项目文件夹->属性->Java构建路径中的所有内容,Android X.Y除外,其中X.Y是Android中的版本。清洁,建造。完成了



在此之前,请确保有一个android-support-v4.jar。

如果您使用的是cordova,请尝试cordova clean命令

是的,我的问题与此类似。两个库都有httpime库,所以我删除了一个,并将它指向了另一个项目。你们中的任何人都能准确地解释一下是如何做到的吗?@samih在我提到的示例中,首先我从FaceBookSDK项目库文件夹和构建路径中删除了android-support-v4 jar。然后我添加了对ActionBarSherlock库项目的引用。所以有两个等级相同的罐子。因此,错误“Multiple dex files…”您可以使用grep-r“officingclassname”| grep jar$来搜索包含类名的jar文件。类似的,但我意外地将android-support-v4.jar添加到我的Eclipse构建路径中,并手动将其添加到我创建的libs文件夹中。由于重复引用,我无法编译并得到OP得到的错误消息。我删除了我愚蠢地创建的libs文件夹,一切正常。感谢您的提示。如果构建路径中包含多个版本的库,则也会发生此问题。从libs路径中删除未使用的库,清理并保存项目,重新启动Eclipse并重新编译它。从构建路径中排除bin文件夹为我解决了这个问题。谢谢问题的根本原因是其中一个库使用nineodeldroid库作为存储在./libs dir中的jar,当另一个项目通过引用它来使用NineoladDroid时,当您在libs中的包中有Foo.java和jar中有Foo.java这样的东西时,也会发生这种情况/当您的项目文件夹在Google Drive中时,就会发生此错误/错误。我猜它会在驱动同步时出错。至少对我来说,这也是我的原因。v13支持库包括v4支持库,所以dex显示了多个类声明。是的,我也这么做了。删除所有jar文件,并重新添加。在排序和导出中,取消选中依赖项并选中刚才添加的所有库我尝试了此处列出的所有其他选项,但正是这个选项为我解决了问题!:是的,Eclipse应该消亡,Android Studio应该获得1.0版——世界将变得更好。这是正确的答案。解释是,facebook.android包含了两次。一次是在项目中包含的facebookSDK.jar中,一次是在项目中直接包含java文件。从项目中删除它是一种干净的方法。所有其他答案都只是解决办法,不会导出定义或其他东西……对我来说,这是一个文件android support v4.jar 1.jar,我刚刚删除了它,并清理了项目!也解决了我的问题!但是它停止了gcm.jar的工作,如何让它在没有这个错误的情况下工作呢?我有一个错误:多个dex Lcom/google/android/gms/analytics/internal/Command$1。我是在将google play升级到22.1.1之后得到这个的。取消选择google play项目中的私有库删除了错误您救了我的命!Thx~你好,瑞秋,欢迎来到Stackoverflow。由于篇幅和内容,您的答案被标记为低质量。回答问题时,请提供关于如何解决问题的附加说明。它将帮助他人并为你赢得声誉:我尝试了这条线索中的几乎所有内容,但都不起作用。我通过删除该项目,然后创建一个新项目,并从备份中复制粘贴源文件来解决此问题。请参阅此项。请在下面的链接中查看我的答案。这是我的问题,问题仍然存在