意外的顶级异常:糟糕的类文件魔术,在 Android 中 [英] Unexpected top level exception: bad class file magic, in Android

查看:31
本文介绍了意外的顶级异常:糟糕的类文件魔术,在 Android 中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用 ANT 通过命令行编译我的 android 程序.并且代码编译得很好.但是当目标 -dex 被执行时,我得到以下错误:

I am trying to compile my android program via command line, using ANT. And the code compiles fine. But when the target -dex is executed, I get the following error:

 [dex] input: /Users/aditya/Desktop/workspace/Java/Play/bin/classes
      [dex] input: /Library/Java/Android/tools/support/annotations.jar
      [dex] Using Pre-Dexed annotations-5bd0afe28d834ceff67df1063f0f145b.jar <- /Library/Java/Android/tools/support/annotations.jar
      [dex] Converting compiled files and external libraries into /Users/aditya/Desktop/workspace/Java/Play/bin/classes.dex...
       [dx] 
       [dx] UNEXPECTED TOP-LEVEL EXCEPTION:
       [dx] com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)
       [dx]     at com.android.dx.command.dexer.Main.processClass(Main.java:665)
       [dx]     at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634)
       [dx]     at com.android.dx.command.dexer.Main.access$600(Main.java:78)
       [dx]     at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:170)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
       [dx]     at com.android.dx.command.dexer.Main.processOne(Main.java:596)
       [dx]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
       [dx]     at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
       [dx]     at com.android.dx.command.dexer.Main.run(Main.java:230)
       [dx]     at com.android.dx.command.dexer.Main.main(Main.java:199)
       [dx]     at com.android.dx.command.Main.main(Main.java:103)
       [dx] ...while parsing com/adi/play/BuildConfig.class
       [dx] 
       [dx] 
       [dx] UNEXPECTED TOP-LEVEL EXCEPTION:
       [dx] com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)
       [dx]     at com.android.dx.command.dexer.Main.processClass(Main.java:665)
       [dx]     at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634)
       [dx]     at com.android.dx.command.dexer.Main.access$600(Main.java:78)
       [dx]     at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:170)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
       [dx]     at com.android.dx.command.dexer.Main.processOne(Main.java:596)
       [dx]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
       [dx]     at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
       [dx]     at com.android.dx.command.dexer.Main.run(Main.java:230)
       [dx]     at com.android.dx.command.dexer.Main.main(Main.java:199)
       [dx]     at com.android.dx.command.Main.main(Main.java:103)
       [dx] ...while parsing com/adi/play/PlayActivity$1.class
       [dx] 
       [dx] 
       [dx] UNEXPECTED TOP-LEVEL EXCEPTION:
       [dx] com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)
       [dx]     at com.android.dx.command.dexer.Main.processClass(Main.java:665)
       [dx]     at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634)
       [dx]     at com.android.dx.command.dexer.Main.access$600(Main.java:78)
       [dx]     at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:170)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
       [dx]     at com.android.dx.command.dexer.Main.processOne(Main.java:596)
       [dx]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
       [dx]     at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
       [dx]     at com.android.dx.command.dexer.Main.run(Main.java:230)
       [dx]     at com.android.dx.command.dexer.Main.main(Main.java:199)
       [dx]     at com.android.dx.command.Main.main(Main.java:103)
       [dx] ...while parsing com/adi/play/PlayActivity$2.class
       [dx] 
       [dx] 
       [dx] UNEXPECTED TOP-LEVEL EXCEPTION:
       [dx] com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)
       [dx]     at com.android.dx.command.dexer.Main.processClass(Main.java:665)
       [dx]     at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634)
       [dx]     at com.android.dx.command.dexer.Main.access$600(Main.java:78)
       [dx]     at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:170)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
       [dx]     at com.android.dx.command.dexer.Main.processOne(Main.java:596)
       [dx]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
       [dx]     at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
       [dx]     at com.android.dx.command.dexer.Main.run(Main.java:230)
       [dx]     at com.android.dx.command.dexer.Main.main(Main.java:199)
       [dx]     at com.android.dx.command.Main.main(Main.java:103)
       [dx] ...while parsing com/adi/play/PlayActivity.class
       [dx] 
       [dx] 
       [dx] UNEXPECTED TOP-LEVEL EXCEPTION:
       [dx] com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)
       [dx]     at com.android.dx.command.dexer.Main.processClass(Main.java:665)
       [dx]     at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634)
       [dx]     at com.android.dx.command.dexer.Main.access$600(Main.java:78)
       [dx]     at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:170)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
       [dx]     at com.android.dx.command.dexer.Main.processOne(Main.java:596)
       [dx]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
       [dx]     at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
       [dx]     at com.android.dx.command.dexer.Main.run(Main.java:230)
       [dx]     at com.android.dx.command.dexer.Main.main(Main.java:199)
       [dx]     at com.android.dx.command.Main.main(Main.java:103)
       [dx] ...while parsing com/adi/play/R$attr.class
       [dx] 
       [dx] 
       [dx] UNEXPECTED TOP-LEVEL EXCEPTION:
       [dx] com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)
       [dx]     at com.android.dx.command.dexer.Main.processClass(Main.java:665)
       [dx]     at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634)
       [dx]     at com.android.dx.command.dexer.Main.access$600(Main.java:78)
       [dx]     at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:170)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
       [dx]     at com.android.dx.command.dexer.Main.processOne(Main.java:596)
       [dx]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
       [dx]     at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
       [dx]     at com.android.dx.command.dexer.Main.run(Main.java:230)
       [dx]     at com.android.dx.command.dexer.Main.main(Main.java:199)
       [dx]     at com.android.dx.command.Main.main(Main.java:103)
       [dx] ...while parsing com/adi/play/R$drawable.class
       [dx] 
       [dx] 
       [dx] UNEXPECTED TOP-LEVEL EXCEPTION:
       [dx] com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)
       [dx]     at com.android.dx.command.dexer.Main.processClass(Main.java:665)
       [dx]     at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634)
       [dx]     at com.android.dx.command.dexer.Main.access$600(Main.java:78)
       [dx]     at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:170)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
       [dx]     at com.android.dx.command.dexer.Main.processOne(Main.java:596)
       [dx]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
       [dx]     at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
       [dx]     at com.android.dx.command.dexer.Main.run(Main.java:230)
       [dx]     at com.android.dx.command.dexer.Main.main(Main.java:199)
       [dx]     at com.android.dx.command.Main.main(Main.java:103)
       [dx] ...while parsing com/adi/play/R$id.class
       [dx] 
       [dx] 
       [dx] UNEXPECTED TOP-LEVEL EXCEPTION:
       [dx] com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)
       [dx]     at com.android.dx.command.dexer.Main.processClass(Main.java:665)
       [dx]     at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634)
       [dx]     at com.android.dx.command.dexer.Main.access$600(Main.java:78)
       [dx]     at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:170)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
       [dx]     at com.android.dx.command.dexer.Main.processOne(Main.java:596)
       [dx]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
       [dx]     at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
       [dx]     at com.android.dx.command.dexer.Main.run(Main.java:230)
       [dx]     at com.android.dx.command.dexer.Main.main(Main.java:199)
       [dx]     at com.android.dx.command.Main.main(Main.java:103)
       [dx] ...while parsing com/adi/play/R$layout.class
       [dx] 
       [dx] 
       [dx] UNEXPECTED TOP-LEVEL EXCEPTION:
       [dx] com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)
       [dx]     at com.android.dx.command.dexer.Main.processClass(Main.java:665)
       [dx]     at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634)
       [dx]     at com.android.dx.command.dexer.Main.access$600(Main.java:78)
       [dx]     at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:170)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
       [dx]     at com.android.dx.command.dexer.Main.processOne(Main.java:596)
       [dx]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
       [dx]     at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
       [dx]     at com.android.dx.command.dexer.Main.run(Main.java:230)
       [dx]     at com.android.dx.command.dexer.Main.main(Main.java:199)
       [dx]     at com.android.dx.command.Main.main(Main.java:103)
       [dx] ...while parsing com/adi/play/R$string.class
       [dx] 
       [dx] 
       [dx] UNEXPECTED TOP-LEVEL EXCEPTION:
       [dx] com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388)
       [dx]     at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)
       [dx]     at com.android.dx.command.dexer.Main.processClass(Main.java:665)
       [dx]     at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634)
       [dx]     at com.android.dx.command.dexer.Main.access$600(Main.java:78)
       [dx]     at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:170)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
       [dx]     at com.android.dx.command.dexer.Main.processOne(Main.java:596)
       [dx]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
       [dx]     at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
       [dx]     at com.android.dx.command.dexer.Main.run(Main.java:230)
       [dx]     at com.android.dx.command.dexer.Main.main(Main.java:199)
       [dx]     at com.android.dx.command.Main.main(Main.java:103)
       [dx] ...while parsing com/adi/play/R.class
       [dx] 
       [dx] 10 errors; aborting

BUILD FAILED
/Library/Java/Android/tools/ant/build.xml:899: The following error occurred while executing this line:
/Library/Java/Android/tools/ant/build.xml:901: The following error occurred while executing this line:
/Library/Java/Android/tools/ant/build.xml:913: The following error occurred while executing this line:
/Library/Java/Android/tools/ant/build.xml:294: null returned: 1

我在使用 Gradle 和 IntelliJ 时遇到了同样的错误.

I get the same kind of error with Gradle and IntelliJ.

我无法弄清楚发生了什么实际问题.请帮忙.我正在使用 Java 1.8 来编译这个程序.有没有办法使用 Java 1.8 来做到这一点?有必要用1.6吗?如果是这样,我应该如何使用 Java 1.6?

I am not able to figure out the actual problem whats happening. Please Help. I am using Java 1.8 to compile this program. Is there no way of using Java 1.8 to do this? Is it necessary to use 1.6? If so, how should I use Java 1.6?

推荐答案

检查您用于编译类的 Java 版本.

Check the version of Java you are using to compile your classes.

您需要使用 Java 6 或 7 进行 Android 开发.最近添加了 Java 7 支持,但其功能有限,因此请使用 6 以获得最大兼容性.

You need to be using Java 6 or 7 for Android development. Java 7 support was added more recently and its functionality is limited, so use 6 for maximum compatibility.

这篇关于意外的顶级异常:糟糕的类文件魔术,在 Android 中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆