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

如何修复Flutter应用中JVM目标兼容性版本不一致的报错?

解决Flutter Android构建JVM版本不一致问题

以下是需要检查和修改的内容:

1. 强制统一所有模块的JVM目标版本

在项目根目录的android/build.gradle中添加全局配置,确保所有第三方插件模块和主项目使用相同的JVM版本:

subprojects {
    afterEvaluate { project ->
        if (project.hasProperty('android')) {
            android {
                compileOptions {
                    sourceCompatibility JavaVersion.VERSION_17
                    targetCompatibility JavaVersion.VERSION_17
                }
                kotlinOptions {
                    jvmTarget = '17'
                }
            }
        }
    }
}

2. 清理构建缓存

旧的构建缓存可能残留冲突配置,执行以下命令彻底清理:

flutter clean
rm -rf android/.gradle
rm -rf ~/.gradle/caches
flutter pub get

之后重新尝试运行项目。

3. 检查第三方插件的本地配置

问题出在receive_sharing_intent插件,可能该插件的内部build.gradle设置了不同的JVM版本。可以找到该插件的Android模块配置文件(路径通常为.pub-cache/hosted/pub.dev/receive_sharing_intent-[版本号]/android/build.gradle),确认其中的compileOptions和kotlinOptions目标版本是否为17,若不一致则修改为和项目一致的版本。

4. 验证Android Studio的JDK配置

打开Android Studio,通过File > Project Structure > SDK Location确认JDK路径指向的是OpenJDK 17(与flutter doctor -v中显示的Java版本一致)。

5. 升级插件版本

检查pubspec.yaml中receive_sharing_intent的版本,尝试升级到最新稳定版,新版本可能已修复JVM版本兼容问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 13:35:00