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

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

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

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


当前回答

我在其类路径中包含protobuf lite (Protocol Buffers by谷歌)的项目中有完全相同的错误。我想原因是我的类路径和项目文件夹中的protobuf-lite.jar是在我以前的机器中构建的。当我下载Maven并重新构建protobuf-lite.jar文件,然后将其作为用户库重新添加到我的项目中时,一切都很正常。

其他回答

编辑(新解决方案):

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

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

我之前的解决方案:

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

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

简单的步骤:

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

如果你想解决这个问题,那么你必须把Android SDK1.6换成Android 2.2。之后,清理项目,然后构建并运行。然后您将看到您的应用程序正在运行。

以上所有的解决方案都不适合我。我没有使用任何预编译的.jar。我使用的是LVL和Dalvik错误,所有这些都与市场许可库有关。

这个问题通过删除主项目并重新导入(从现有的资源中创建一个新项目)得到了解决。

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

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

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