1

我需要从命令行构建我的 android 应用程序(我正在使用 Java7 编译代码),但是当我尝试创建 dex 文件时出现以下错误

trouble processing:
bad class file magic (cafebabe) or version (0033.0000)
...while parsing org/holoeverywhere/widget/TimePicker$OnTimeChangedListener.class
...while processing org/holoeverywhere/widget/TimePicker$OnTimeChangedListener.class

trouble processing:
bad class file magic (cafebabe) or version (0033.0000)
...while parsing org/holoeverywhere/widget/TimePicker$SavedState$1.class
...while processing org/holoeverywhere/widget/TimePicker$SavedState$1.class

这就是我调用 dx.bat 的方式

dx --dex --output=bin/classes.dex bin/classes.jar

我已经看到了类似的问题(使用 dx.bat 时的错误类文件魔术、使用 ADK14Dx 错误类文件魔术(cafebabe)或版本(0033.0000)

但是在这些问题中给出的唯一解决方案是使用java6编译我们的代码 因为我在我的项目中使用 ActionbarSherlock,所以我必须使用Java7,我想知道是否有办法从类创建 dex 文件java7创建的文件

毕竟 IntelliJ 已经在这样做了!

4

1 回答 1

1

好吧,我在这里找到了解决方案:http: //www.informit.com/articles/article.aspx?p=1966023

我在 javac 命令中使用了以下参数,因此生成的类文件适用于 Dx 命令,

javac -source 1.6 -target 1.6 ca/tutortutor/utils/Utils.java
于 2013-06-08T12:02:25.290 回答