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

Bitrise构建报错:':package_info_plus:compileReleaseJavaWithJavac'执行失败

解决方案

1. 统一所有Gradle模块的Java版本配置

你的现有配置仅作用于主Android模块,间接依赖的package_info_plus模块未继承该配置。修改项目根目录下的android/build.gradle,添加全局配置覆盖所有子模块:

allprojects {
    repositories {
        google()
        mavenCentral()
    }

    // 统一所有子模块的Java编译版本
    tasks.withType(JavaCompile) {
        sourceCompatibility = JavaVersion.VERSION_1_8
        targetCompatibility = JavaVersion.VERSION_1_8
    }

    // 统一Kotlin编译的JVM目标版本
    tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach {
        kotlinOptions {
            jvmTarget = "1.8"
        }
    }
}

同时保留android/app/build.gradle内原有的compileOptions和kotlinOptions配置,确保层级覆盖生效。

2. 匹配Bitrise环境的JDK版本

Bitrise默认JDK版本可能与你的配置不兼容,需在Workflow中指定对应版本:

  • 若使用Java 1.8:在Android构建步骤中添加环境变量JDK_VERSION=8
  • 若尝试Java 17:设置环境变量JDK_VERSION=17
    确保JDK版本与sourceCompatibility配置完全一致。

3. 强制指定兼容的package_info_plus版本

间接依赖的高版本package_info_plus可能要求Java 17,在pubspec.yaml中强制指定兼容Java 8的版本(如4.2.0):

dependencies:
  flutter:
    sdk: flutter
  sentry_flutter: ^7.0.0 # 保留你的sentry版本
  package_info_plus: 4.2.0 # 强制覆盖间接依赖版本

执行flutter pub get更新依赖后推送代码至Bitrise重新构建。

4. 确认Bitrise的Flutter版本一致性

确保Bitrise的Flutter安装步骤指定3.22.2稳定版:在Workflow的「Flutter Install」步骤中,设置Flutter version为3.22.2并勾选Stable channel,避免版本差异引发的兼容问题。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 18:52:41