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

Flutter升级至3.19.0后Gradle插件与RivePlugin编译错误求助

问题解决方案

一、Gradle插件从imperative apply迁移至declarative plugins block

直接按以下步骤修改Android端Gradle配置文件:

  • 修改android/build.gradle:
    删掉原有的buildscript代码块,替换为plugins声明:

    plugins {
        id "com.android.application" version "7.4.2" apply false
        id "org.jetbrains.kotlin.android" version "1.9.0" apply false
        id "dev.flutter.flutter-gradle-plugin" version "3.19.0" apply false
    }
    
    allprojects {
        repositories {
            google()
            mavenCentral()
        }
    }
    

    注意:版本号要和你项目中原本使用的Gradle、Kotlin版本保持一致,不要盲目复制。

  • 修改android/app/build.gradle:
    替换开头的apply plugin语句为plugins块:

    plugins {
        id "com.android.application"
        id "kotlin-android"
        id "dev.flutter.flutter-gradle-plugin"
    }
    
  • 修改android/settings.gradle:
    确保文件开头的pluginManagement和plugins配置正确:

    pluginManagement {
        def flutterSdkPath = {
            def properties = new Properties()
            file("local.properties").withInputStream { properties.load(it) }
            def flutterSdkPath = properties.getProperty("flutter.sdk")
            assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
            return flutterSdkPath
        }()
    
        includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
    
        repositories {
            google()
            mavenCentral()
            gradlePluginPortal()
        }
    }
    
    plugins {
        id "dev.flutter.flutter-plugin-loader" version "3.19.0"
        id "com.android.application" version "7.4.2" apply false
        id "org.jetbrains.kotlin.android" version "1.9.0" apply false
    }
    
    include ":app"
    

二、GeneratedPluginRegistrant找不到RivePlugin类

按以下顺序操作:

  • 打开项目的pubspec.yaml,将rive插件版本升级到适配Flutter 3.19的最新版(比如rive: ^0.11.4,可查看pub.dev上的最新版本),然后执行flutter pub get。
  • 删除android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java文件,执行flutter clean清理缓存,再重新执行flutter pub get,Flutter会自动生成正确的注册文件。
  • 如果以上步骤无效,手动删除android/.gradle目录,重启IDE后重新构建项目。

其他用户反馈情况

是的,大量用户在升级Flutter 3.10+(尤其是3.19稳定版)后遇到Gradle插件迁移问题——这是因为Flutter官方从该版本开始强制推行Gradle的声明式插件配置,弃用了旧的命令式apply方式。另外,rive插件的适配问题也有不少用户反馈,主要集中在插件版本不兼容、自动生成的注册文件出错这两点。

内容的提问来源于stack exchange,提问作者Ebuzer SARIYERLİOĞLU

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 22:11:22