You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

构建Jar遇Class文件版本错误:62.0需为57.0,求适配Java版本建议

问题分析

Class文件版本与JDK版本对应关系:

  • 62.0 → Java 18
  • 57.0 → Java 13

你遇到的错误是因为:Copier类是用Java 18编译生成的(对应字节码版本62.0),但当前项目的构建环境要求兼容Java 13的字节码(57.0)。虽然你的系统JDK是18,但项目编译配置可能强制指定了更低的目标版本,导致高版本字节码无法被识别。

适配的Java版本

有两种可行方向:

  1. 降级到Java 13:如果项目整体依赖均基于Java 13,更换系统JDK为Java 13即可兼容字节码要求。
  2. 保留Java 18:调整项目编译配置,将目标字节码版本提升至62.0(对应Java 18),匹配Copier类的版本。
解决建议

方案一:调整编译配置(推荐,无需更换JDK)

若使用Maven

修改项目根目录下的pom.xml,更新maven-compiler-plugin的source和target参数为18:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.11.0</version>
            <configuration>
                <source>18</source>
                <target>18</target>
                <encoding>UTF-8</encoding>
            </configuration>
        </plugin>
    </plugins>
</build>

修改后执行mvn clean install重新构建。

若使用Gradle

修改项目根目录下的build.gradle(Groovy语法):

java {
    sourceCompatibility = JavaVersion.VERSION_18
    targetCompatibility = JavaVersion.VERSION_18
}

或Kotlin DSL格式的build.gradle.kts:

java {
    sourceCompatibility = JavaVersion.VERSION_18
    targetCompatibility = JavaVersion.VERSION_18
}

修改后执行gradle clean build重新构建。

方案二:降级系统JDK至Java 13

  1. 下载OpenJDK 13的安装包并完成安装。
  2. 配置系统环境变量:将JAVA_HOME指向Java 13的安装目录,同时调整PATH让Java 13的bin目录优先级最高。
  3. 验证版本:执行java -version和javac -version,确认输出为Java 13相关信息。
  4. 重新执行项目构建命令。

额外排查点

确认Copier类是你修改后编译的文件,还是项目依赖的第三方库:

  • 如果是第三方库,检查该库是否有适配Java 13的版本;若库本身要求Java 18,则优先选择方案一调整编译配置。

内容的提问来源于stack exchange,提问作者Shaitender Singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 08:45:20