在Eclipse中的Android应用程序中,我得到了以下错误。

意想不到的顶级异常: java.lang.IllegalArgumentException:已添加:Lorg/xmlpull/v1/XmlPullParser; .... 转换到Dalvik格式失败,错误1

此错误仅在向项目添加特定的外部JAR文件时出现。我花了很长时间寻找可能的解决方案,但没有一个可行。

我甚至尝试将Android 1.6而不是1.5(我目前使用的版本)。


当前回答

我清理了我的主应用程序项目和它使用的Android库项目。解决问题

其他回答

在我的情况下,我有一个外部罐子添加。因此,我将外部jar位置移动到Project Prop中的android引用的顶部——>Java buildPath——>项目引用

我解决了这个问题。

这是一个JAR文件冲突。

我的构建路径上似乎有两个包含相同包和类的JAR文件。

jar和android_maps_lib-1.0.2

从一个JAR文件中删除这个包就解决了这个问题。

在大多数情况下,这个问题是由Proguard的bug或损坏版本引起的,因为一些奇怪的原因,Proguard通常会从官方的Android SDK管理器安装

请不要编辑Proguard的bat文件,以免出现后续问题,如果遇到此问题,请到官方网站下载最新稳定版本的Proguard,并替换所有的Proguard文件

android-sdk\tools\proguard

使用从下载的存档中提取的最新保护文件。

没有必要删除所有外部库的依赖关系,如果开发人员添加一个库到他的项目中,最有可能的是这个库是需要的。

我用另一种方法找到了解决办法。 https://stackoverflow.com/a/14948244/1014288

多亏了这个,你可以修复没有删除和东西

我也有同样的问题。当我检查时,我看到有两个类具有相同的名称,每个类在我添加的外部jar文件中。然后我必须删除一个jar文件。幸运的是,我得到了另一个jar文件1我已经删除。