【问题标题】:Conversion to Dalvik format failed with error 1 - Unable to compile ApiDemos samples from Android转换为 Dalvik 格式失败,出现错误 1 ​​- 无法从 Android 编译 ApiDemos 示例
【发布时间】:2011-12-01 13:22:18
【问题描述】:

我从 ApiDemo 为 Eclipse Indingo(在 Windows 7 中)中的 API 12 示例代码创建了一个项目。我对 11 和 13 做了同样的事情,结果如下所述。

  1. 如果没有 android-support-v4.jar,这个东西根本无法编译,会产生 300 多个编译错误 - 主要是因为无法解析某些类。

  2. 将 android-suuport-v4 添加到项目的 libs 目录,然后添加到构建路径后,我能够消除编译错误,但随后开始出现这个我无法解决的讨厌错误。如果我从构建路径中删除 v4 兼容性 jar 但随后又出现编译错误,我只会离开。

这太疯狂了……我更沮丧了,因为我在让基本的演示 iPhone 项目工作时从来没有遇到过任何问题……

请帮忙....

[2011-09-16 14:06:34 - ApiDemos] Dx 处理“javax/xml/datatype/DatatypeFactory.class”时出现问题:

对核心类(java.* 或 javax.*)的不明智或错误使用 在不构建核心库时。

这通常是由于无意中包含了核心库文件 在应用程序的项目中,当使用 IDE(例如 蚀)。如果你确定你不是故意定义一个 核心类,那么这是最可能的解释是什么 继续。

但是,您实际上可能正在尝试在核心中定义一个类 命名空间,您可能已获取的来源,例如, 来自非 Android 虚拟机项目。这将最 肯定不行。至少会危及 您的应用程序与平台未来版本的兼容性。 它的合法性也经常受到质疑。

如果你真的打算建立一个核心库——这只是 适合作为创建完整虚拟机的一部分 分发,而不是编译应用程序——然后使用 “--core-library”选项来禁止显示此错误消息。

如果您继续使用“--core-library”但实际上 构建应用程序,然后预先警告您的应用程序 在某些时候仍然无法构建或运行。请成为 为愤怒的客户做好准备,例如,他们发现您的 应用程序一旦升级其操作就停止运行 系统。你会为这个问题负责。

如果您合法地使用了一些恰好位于 核心包,那么您拥有的最简单安全的替代方案是 重新打包该代码。也就是说,将有问题的类移动到 你自己的包命名空间。这意味着他们永远不会在 与核心系统类冲突。 JarJar 是一个可以提供帮助的工具 你在这方面的努力。如果你发现你无法做到这一点,那么 这表明你所走的道路最终会 导致痛苦、痛苦、悲伤和悲叹。

[2011-09-16 14:06:34 - ApiDemos] Dx 1 错误;中止 [2011-09-16 14:06:34 - ApiDemos] 转换为 Dalvik 格式失败,错误 1

【问题讨论】:

    标签: android sample


    【解决方案1】:

    这可能是因为您在尝试构建演示代码之前没有将 SDK/SDK-tools 更新到最新版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-08
      • 2012-12-07
      • 2011-06-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多