Java 坏类cafebabe或版本0034

Java 坏类cafebabe或版本0034,java,android,android-studio,Java,Android,Android Studio,在阅读了其他类似的问题后,我仍然找不到解决这个问题的方法。我得到了以下堆栈跟踪,它抱怨一个jar包含一个我用Java 1.7开发、编译的库: UNEXPECTED TOP-LEVEL EXCEPTION: com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000) at com.android.dx.cf.direct.DirectClassFile.parse0(D

在阅读了其他类似的问题后,我仍然找不到解决这个问题的方法。我得到了以下堆栈跟踪,它抱怨一个jar包含一个我用Java 1.7开发、编译的库:

UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000)
at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472)
at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)
at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388)
at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)
at com.android.dx.command.dexer.Main.processClass(Main.java:704)
at com.android.dx.command.dexer.Main.processFileBytes(Main.java:673)
at com.android.dx.command.dexer.Main.access$300(Main.java:83)
at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:602)
at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:284)
at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166)
at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
at com.android.dx.command.dexer.Main.processOne(Main.java:632)
at com.android.dx.command.dexer.Main.processAllFiles(Main.java:510)
at com.android.dx.command.dexer.Main.runMonoDex(Main.java:280)
at com.android.dx.command.dexer.Main.run(Main.java:246)
at com.android.dx.command.dexer.Main.main(Main.java:215)
at com.android.dx.command.Main.main(Main.java:106)
...while parsing build/classes/main/com/utils/helpers/DateTimeAdapter.class
我在Android Studio和Eclipse中将编译器级别设置为java 7,在build.gradle文件中添加sourceCompatibility和targetCompatibility并没有解决这个问题。JDK的路径也在两个IDE中正确设置

我发现0034对于Java8是十六进制的,但它甚至没有安装在我的机器上

我也尝试过编辑proguard.bat,正如本文所建议的,但没有成功


有人对此有什么想法吗?

尽管这个类是用Java 7编译的,而且命令
javap-verbose
也这么说,但当我在Android Studio中打开.class文件时,屏幕顶部显示了反编译的.class文件,字节码版本:52.0(Java 8)


最后,删除并编译jar再次奏效。

您知道android构建工具的版本吗?Java 7支持仅在版本19中添加。我正在使用构建工具21.1.2并编译到sdk 21。您可能已经看到并尝试过这一点,但如果没有,那么,我想我有一个阅读:
javap-verbose build/classes/main/com/utils/helpers/DateTimeAdapter.class
这显示了什么?检查文件是否以0xcafebabe开头,因此: