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

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

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

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


当前回答

这种情况通常发生在eclipse运行了很长时间之后,或者在我成功地构建了一个带签名的apk之后。

就我的经验而言,修复它我只是重新启动eclipse。

其他回答

我也遇到过同样的问题,但这些方法都不起作用。 最后,我在控制台中看到错误是由于重复的类(一个在现有项目中,一个在添加的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。 如果是,请尝试移除其中一个。

这对我很管用。

我在使用Eclipse neon和JDK 1.8时遇到了这个问题。在换成JDK 1.7之后,这个问题就解决了。

如果你有ADT版本12+,你应该更新你的防护从4.4 -> 4.6(如这里所述)。此外,您应该以原始形式保留…\bin\proguard.bat文件。

只需从网上下载它,并复制lib文件夹从下载包到:

[Android SDK安装目录]\tools\proguard\lib

编辑(新解决方案):

看起来之前的解决方案只是一个旁路。我最终设法永久性地解决了这个问题: 在我的案例中,在我的项目中的android-support-v4文件和在我的项目中引用的Facebook项目中存在不匹配。

我通过执行Lint检查发现了这个错误(Android工具/运行Lint:检查常见错误)

我之前的解决方案:

我在这个网站上尝试了任何可能的解决方案-没有任何帮助!!

最后我在这里找到了答案: https://groups.google.com/forum/ !主题/ actionbarsherlock / drzI7pEvKd4

简单的步骤:

转到项目->取消勾选自动生成 进入项目->清洁…,清洁图书馆项目和你的 应用项目 导出您的应用作为一个签名APK,而自动构建仍然是 禁用

当我试图导出我的项目时,我也遇到了同样的问题。控制台什么也看不见。

对我来说,解决方案是升级proguard到最新版本,希望这能帮助到一些人。