当前位置: 首页 > 面试题库 >

错误的类文件magic or version

姚子石
2023-03-14
问题内容

我已经知道这个问题已经被经常问到并回答了,但是我发现没有一个答案可以解决我的问题。

这是错误的:

Error:Gradle: Execution failed for task ':ffcommunity:preDexDebug'.
 com.android.ide.common.internal.LoggedErrorException: Failed to run command:
    D:\Android SDK\sdk\build-tools\20.0.0\dx.bat --dex --output D:\Users\ReVo\Documents\IntelliJ IDEA\FFCommunity\ffcommunity\build\intermediates\pre-dexed\debug\bananaquery-2ee85432877a057e7414910b8127805535139d5d.jar D:\Users\ReVo\Documents\IntelliJ IDEA\FFCommunity\ffcommunity\libs\bananaquery.jar
Error Code:
    1
Output:
    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:665)
        at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634)
        at com.android.dx.command.dexer.Main.access$600(Main.java:78)
        at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572)
        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:596)
        at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
        at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
        at com.android.dx.command.dexer.Main.run(Main.java:230)
        at com.android.dx.command.dexer.Main.main(Main.java:199)
        at com.android.dx.command.Main.main(Main.java:103)
    ...while parsing com/comuf/revonline/bananaquery/BananaInsert.class
    1 error; aborting

错误是bad class file magic (cafebabe) or version (0034.0000)

我在同一天内多次构建并执行该应用程序而没有出现问题,但是现在每次出现此消息均失败。

项目SDK为Android API 19 Platform,项目级别为1.7。

CompileSDK为19,buildToolsVersion为'20.0.0'。

编译选项:

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_7
    targetCompatibility JavaVersion.VERSION_1_7
}

在dependencies我有:

compile files('libs/bananaquery.jar')

该库使用Android API 19 Platform具有项目级别的SDK构建1.7。

我的.jar文件在libs/文件夹中。

我使用·IntelliJ IDEA 14 Preview·,这可能是原因吗?凭借IntellIJ IDEA 13,它仍然停留在·“ Gradle sync”·中

编译的文件可能是无用的,因为我有·compile fileTree(dir: ‘libs’, include: [‘*.jar’])·太多


问题答案:

我的JAVA_HOME变量更改为Java1.8,并且在编译纯java模块作为我的android项目的依赖项时收到此错误消息。

java模块的build.gradle

apply plugin: 'java'

解决方案#1:快速清理脏东西我通过将其设置JAVA_HOME为1.7来修复它:

export JAVA_HOME=`/usr/libexec/java_home -v 1.7`

解决方案2:更改编译器版本:
在build.gradle中将此特定模块改回1.7

apply plugin: 'java'
sourceCompatibility = 1.7
targetCompatibility = 1.7


 类似资料:
  • 在将配置单元外部表从RC格式升级为ORC格式并在其上运行MSCK修复表(当我确实从表中选择全部时)时,我得到以下错误- 将RC格式的历史数据迁移到ORC格式的新定义的过程是什么?

  • 问题内容: 这是我的build.gradle 当我运行项目时,我会看到此错误 错误:(59、8)错误:无法访问android.support.v4.app.ActivityCompatApi23的ActivityCompatApi23类文件 和 错误:任务’:app:compileDebugJavaWithJavac’的执行失败。 编译失败;有关详细信息,请参见编译器错误输出。 我该如何解决这个问

  • 问题内容: 我正在尝试以IntelliJ想法编译我的项目。我在外部jar文件中使用类,并且在编译时收到上述错误。 我知道这是说jar文件是使用比IntelliJ正在使用的Java版本更高的Java版本编译的。我的问题是如何使它们兼容?我已经将Mac上的Java更新为1.8,并且在运行时或确认了这一点。 我想念什么?(除Java开发经验外) 问题答案: 选择“文件”->“项目结构”。 在“项目设置”

  • 我正试图用IntelliJ idea编译我的项目。我正在外部jar文件中使用一个类,编译时收到以下错误。 我理解它是说jar文件是用比IntelliJ使用的版本更新的Java版本编译的。我的问题是如何使它们兼容?我已经将Mac上的Java更新为1.8,当我运行或时,它确认了这一点。 我错过了什么?(除了Java开发经验)

  • 更新我删除了代码,但我仍然收到6个ESLint错误,我不确定原因。 错误:未定义“Google”。[no-undef]var map=new google.maps.map(document.getElementByID(“map”),{ 错误:未定义“document”。[no-undef]var map=new google.maps.map(document.getElementByID(“

  • 我正在尝试运行一个颤振应用程序,在尝试时出现了这个错误,我所做的是我想在没有android studio的情况下运行颤振应用程序,所以我下载了android SDK和JDK 17,在我运行颤振医生后,它告诉我一切都很好,我尝试运行,它给了我这个错误: 所以我尝试了一个旧版本的JDK,它给了我另一个错误,所以我看到了使用JDK 17运行的第三个解决方案,那就是降级gradle中的gradle。属性,