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

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

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

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


当前回答

我遇到了这个问题,但我的解决办法是双重的。 1)。我不得不在项目->属性-> Android下添加一个Android目标版本。 2)。我没有所有的“第三方插件”。点击AVD SDK管理器下的可用软件包->第三方附加组件->谷歌公司。我下载了所有的sdk,这解决了我的问题。

其他回答

我个人通过手动编辑项目设法解决了这个问题。属性文件。

它是什么:

target=android-16
android.library.reference.1=..\\..\\github\\ActionBarSherlock\\library
android.library.reference.2=../../github/android-numberpicker/library

我把它改成这样问题就解决了

target=android-16
android.library.reference.1=../../github/ActionBarSherlock/library
android.library.reference.2=../../github/android-numberpicker/library

使用“修复项目属性”工具未自动修复此文件。

这里的答案对我的情况没有帮助。

对我来说,问题是mvn eclipse:eclipse正在生成一个类路径条目,这是一个Android库项目的项目引用,然而,它没有显示在eclipse构建路径设置!这意味着库类在dexer中结束了两次,一次来自隐藏的项目引用,一次来自链接库JAR。

我必须用文本编辑器打开.classpath并手动删除projects元素。这解决了问题。

这个错误应该最终在ADT 17/Tools r17预览版发布时得到修复!如果不是全部,至少在某些情况下是这样。

如果您在构建路径中添加了Android.jar文件,可能是由于Eclipse中的意外快速修复,也会导致这种情况。删除它右击项目->构建路径->配置构建路径-> android.jar,删除。

我也遇到过同样的问题,但这些方法都不起作用。 最后,我在控制台中看到错误是由于重复的类(一个在现有项目中,一个在添加的jar文件中):

java.lang.IllegalArgumentException: already added: package/MyClassclass;
[2011-01-19 14:54:05 - ...]: Dx1 error; aborting
[2011-01-19 14:54:05 - ...] Conversion to Dalvik format failed with error 1

因此,请检查您是否在项目中添加了带有重复类的jar。 如果是,请尝试移除其中一个。

这对我很管用。