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

Flutter Android APK构建问题:Kotlin版本不兼容致应用无法启动

Flutter构建成功但分发后无法打开的问题解决

问题描述

构建Flutter应用并通过Firebase App Distribution分发时,构建过程出现版本警告但最终提示构建完成,但测试人员下载应用后无法打开。控制台输出如下:

w: 类路径中的运行时JAR文件版本应保持一致。在类路径中发现以下文件:
    C:/Users/AbdoulayeB/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk8/1.5.30/5fd47535cc85f9e24996f939c2de6583991481b0/kotlin-stdlib-jdk8-1.5.30.jar (版本1.5)
    C:/Users/AbdoulayeB/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk7/1.6.10/e1c380673654a089c4f0c9f83d0ddfdc1efdb498/kotlin-stdlib-jdk7-1.6.10.jar (版本1.6)
    C:/Users/AbdoulayeB/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.7.10/d2abf9e77736acc4450dc4a3f707fa2c10f5099d/kotlin-stdlib-1.7.10.jar (版本1.7)
    C:/Users/AbdoulayeB/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.7.10/bac80c520d0a9e3f3673bc2658c6ed02ef45a76a/kotlin-stdlib-common-1.7.10.jar (版本1.7)
w: 类路径中的部分运行时JAR版本不兼容,建议从类路径中移除它们
e: C:/Users/AbdoulayeB/.gradle/caches/modules-2/files-2.1/androidx.annotation/annotation/1.5.0/857678d6b4ca7b28571ef7935c668bdb57e15027/annotation-1.5.0.jar!/META-INF/annotation.kotlin_module: 该模块是用不兼容的Kotlin版本编译的。元数据的二进制版本为1.7.1,预期版本为1.5.1。
e: C:/Users/AbdoulayeB/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.7.10/d2abf9e77736acc4450dc4a3f707fa2c10f5099d/kotlin-stdlib-1.7.10.jar!/META-INF/kotlin-stdlib.kotlin_module: 该模块是用不兼容的Kotlin版本编译的。元数据的二进制版本为1.7.1,预期版本为1.5.1。
e: C:/Users/AbdoulayeB/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.7.10/bac80c520d0a9e3f3673bc2658c6ed02ef45a76a/kotlin-stdlib-common-1.7.10.jar!/META-INF/kotlin-stdlib-common.kotlin_module: 该模块是用不兼容的Kotlin版本编译的。元数据的二进制版本为1.7.1,预期版本为1.5.1。
w: 类路径中的运行时JAR文件版本应保持一致。在类路径中发现以下文件:
    C:/Users/AbdoulayeB/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk8/1.5.30/5fd47535cc85f9e24996f939c2de6583991481b0/kotlin-stdlib-jdk8-1.5.30.jar (版本1.5)
    C:/Users/AbdoulayeB/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk7/1.6.10/e1c380673654a089c4f0c9f83d0ddfdc1efdb498/kotlin-stdlib-jdk7-1.6.10.jar (版本1.6)
    C:/Users/AbdoulayeB/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.7.10/d2abf9e77736acc4450dc4a3f707fa2c10f5099d/kotlin-stdlib-1.7.10.jar (版本1.7)
    C:/Users/AbdoulayeB/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.7.10/bac80c520d0a9e3f3673bc2658c6ed02ef45a76a/kotlin-stdlib-common-1.7.10.jar (版本1.7)
w: 类路径中的部分运行时JAR版本不兼容,建议从类路径中移除它们
正在运行Gradle任务'assembleRelease'...                          504.3秒
√ 已构建 build\app\outputs\flutter-apk\app-release.apk (17.4MB)。

核心原因

从日志能明确看到Kotlin版本冲突:

  • 项目依赖中同时混入了Kotlin 1.5、1.6、1.7三个版本的标准库,版本不兼容
  • 部分第三方依赖(如androidx.annotation)是用Kotlin 1.7编译的,但项目当前配置的Kotlin版本是1.5.1,导致元数据不匹配

虽然Gradle没有中断构建,但这种版本不一致会引发运行时崩溃,就是测试人员打不开应用的直接原因。

解决步骤

1. 统一项目Kotlin版本

打开项目根目录下的build.gradle(项目级配置文件),找到Kotlin版本配置项,统一设置为1.7.10(和依赖的编译版本匹配):

buildscript {
    ext.kotlin_version = '1.7.10'
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath "com.android.tools.build:gradle:7.4.2" // 确保Gradle版本与Kotlin兼容
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

2. 清理Gradle缓存

旧缓存可能残留冲突的依赖,执行以下命令清理:

flutter clean
# Windows系统执行下面这条
gradlew.bat cleanBuildCache
# macOS/Linux系统执行下面这条
./gradlew cleanBuildCache

3. 强制统一所有Kotlin依赖版本

在app目录下的build.gradle中添加强制配置,确保所有依赖都使用指定的Kotlin版本:

configurations.all {
    resolutionStrategy {
        force "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.10"
        force "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.10"
        force "org.jetbrains.kotlin:kotlin-stdlib:1.7.10"
        force "org.jetbrains.kotlin:kotlin-stdlib-common:1.7.10"
    }
}

4. 重新构建并分发

执行命令重新生成Release版APK,之后再通过Firebase App Distribution分发:

flutter build apk --release

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 00:17:07