【问题标题】:Build failed with an exception. Reason: IllegalArgumentException, message: Unsupported class file major version 57构建失败并出现异常。原因:IllegalArgumentException,消息:不支持的类文件主要版本 57
【发布时间】:2021-06-29 07:38:07
【问题描述】:

mxparser 不适用于 jdk13

我正在尝试在我的 android 项目中使用 mxparser。 我下载了 MathParser.org-mXparser-v.4.4.0-jdk13.jar 并将其粘贴到我项目的 libs 文件夹中。 但我的应用无法构建,构建输出是:

FAILURE:构建失败并出现异常。 什么地方出了错: 任务 ':app:mergeDebugJavaResource' 执行失败。 无法解析配置“:app:debugRuntimeClasspath”的所有文件。 无法转换 MathParser.org-mXparser-v.4.4.0-jdk13.jar 以匹配属性 {artifactType=android-java-res, org.gradle.libraryelements=jar, org.gradle.usage=java-runtime}。 > JetifyTransform 执行失败:C:\Users\somagani\AndroidStudioProjects\MyApplication\app\libs\MathParser.org-mXparser-v.4.4.0-jdk13.jar。 > 无法使用 Jetifier 转换“C:\Users\somagani\AndroidStudioProjects\MyApplication\app\libs\MathParser.org-mXparser-v.4.4.0-jdk13.jar”。原因:IllegalArgumentException,消息:不支持的类文件主要版本 57。(使用 --stacktrace 运行以获取更多详细信息。)

我在 build.gradle(:app) 文件夹中的依赖项是

dependencies {
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.3.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
implementation files('libs\\MathParser.org-mXparser-v.4.4.0-jdk13.jar')
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
}
       

然后我将以下内容添加到我的 build:gradle 项目文件中的依赖项中

    classpath 'org.ow2.asm:asm:8.0'
    classpath 'org.ow2.asm:asm-util:8.0'
    classpath 'org.ow2.asm:asm-commons:8.0'

因此我收到以下错误

FAILURE:构建失败并出现异常。 什么地方出了错: 任务 ':app:desugarDebugFileDependencies' 执行失败。 执行 com.android.build.gradle.internal.tasks.Workers$ActionFacade 时发生故障 dexing 时出错。

包含以下行没有用,并给出与上面相同的错误

classpath 'org.anarres.jarjar:jarjar-gradle:1.0.1'

请帮帮我。

【问题讨论】:

    标签: java android gradle android-jetifier


    【解决方案1】:

    这是由于库中的 JDK 版本不匹配造成的。该库未更新以支持最新的 JDK 版本。

    我已经测试过jdk10 版本可以完美运行

    • 将库的 jdk10 版本从此文件夹添加到您的 libs 文件夹:
    MathParser.org-mXparser-v.4.4.0-bin-only.zip\MathParser.org-mXparser-v.4.4.0-bin-only\bin\jdk10
    
    • 将此添加到build.gradle 文件中
    implementation files('libs/MathParser.org-mXparser-v.4.4.0-jdk10.jar')
    

    其他版本我没试过,你可以试试。

    【讨论】:

      猜你喜欢
      • 2020-04-21
      • 2020-04-29
      • 1970-01-01
      • 1970-01-01
      • 2021-09-24
      • 2020-02-09
      • 1970-01-01
      • 2023-03-22
      相关资源
      最近更新 更多