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

Corda5无法生成.cpi文件及Java版本兼容问题求助

问题解决步骤

1. 先解决Java版本不兼容问题

你碰到的UnsupportedClassVersionError是硬要求问题——Corda 5 CLI(包括GroupPolicy相关操作)必须用Java 17运行,你当前用的Java 11(class文件版本55.0对应Java11,61.0对应Java17)不支持。要做这些配置:

  • 先安装Java 17(OpenJDK或Oracle JDK都行)
  • 把终端环境的Java切换到17:
    # 当前终端临时生效
    export JAVA_HOME=/你的Java17安装路径
    export PATH=$JAVA_HOME/bin:$PATH
    
    要是想永久生效,就把这两行加到你的shell配置文件里(比如~/.bashrc或者~/.zshrc),然后执行source ~/.bashrc刷新配置。
  • 验证:输入java -version,确认显示的是Java 17。

2. 修复CPI文件生成失败问题

CPI文件生成不了本质也是Java版本的锅——Corda 5的Cordapp编译打包必须用Java17,Java11跑不完完整构建流程。解决完Java版本后,重新构建项目:

  • 进到项目根目录,执行:
    ./gradlew clean build
    
    这个命令会清掉旧的构建产物,重新编译所有模块,之后就能在workflows/build/目录下找到corda5-obligation-java-1.0-SNAPSHOT.cpi文件了。
  • 确认文件生成后,再重新运行5-vNodeSetup步骤。

3. 额外要检查的配置

  • 看项目的build.gradle(或settings.gradle)里有没有指定Java17:
    确保有这段配置:
    java {
        sourceCompatibility = JavaVersion.VERSION_17
        targetCompatibility = JavaVersion.VERSION_17
    }
    
    没有的话加上,然后重新构建。
  • 要是用IDE(比如IntelliJ),得在项目结构设置里把SDK、语言级别都改成Java17,避免IDE构建时用错版本。

内容的提问来源于stack exchange,提问作者Mrinmoyee Mandal

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 07:59:55