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

升级Bouncy Castle至1.78后Android项目构建失败求助

问题原因与解决方案

核心原因

错误日志里的Unsupported class file major version 65是关键:

  • 类文件版本65对应JDK 19编译的字节码
  • Bouncy Castle 1.78及以后的bcprov-jdk18on包是用JDK 19编译的,而你的项目基于OpenJDK 17,Android的Jetifier工具不支持处理JDK 19生成的类文件,导致构建失败。

解决方案

方案1:降级Bouncy Castle版本

将依赖版本回退到1.77(该版本用JDK 18编译,与JDK 17兼容),修改项目的依赖配置:

implementation 'org.bouncycastle:bcprov-jdk18on:1.77'

方案2:升级项目JDK版本

将项目使用的JDK升级到19或更高版本,同时确保Android Gradle插件(AGP)版本支持对应JDK:

  • AGP 7.4+支持JDK 19,AGP 8.0+支持JDK 20+
  • 在项目级build.gradle中配置:
compileOptions {
    sourceCompatibility JavaVersion.VERSION_19
    targetCompatibility JavaVersion.VERSION_19
}
kotlinOptions {
    jvmTarget = "19"
}

方案3:禁用Jetifier对Bouncy Castle的转换

Bouncy Castle本身已兼容Android,无需Jetify处理,在项目根目录的gradle.properties中添加:

android.jetifier.blacklist=bcprov-jdk18on

内容的提问来源于stack exchange,提问作者Oluwaseun Oyewale

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 01:22:05