flutter gradle版本更新到8.9

gradle版本更新到8.9

因为java版本更新到21.0.5,打开flutter项目时vscode提示需求更新gradle版本

项目一些需要变更的位置

gradle-wrapper.properties

复制代码
distributionBase=GRADLE_USER_HOME
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME

报错提示: Cannot use @TaskAction annotation on method IncrementalTask.taskAction$gradle_core() because interface

复制代码
Script 'D:\Program Files\flutter\packages\flutter_tools\gradle\src\main\groovy\flutter.groovy' line: 1349
* Where:
Script 'D:\Program Files\flutter\packages\flutter_tools\gradle\src\main\groovy\flutter.groovy' line: 1349

* What went wrong:

* What went wrong:
A problem occurred evaluating root project 'android'.
A problem occurred evaluating root project 'android'.
> A problem occurred configuring project ':app'.
   > Could not create task ':app:copyFlutterAssetsDebug'.
> A problem occurred configuring project ':app'.
   > Could not create task ':app:copyFlutterAssetsDebug'.
      > Could not create task ':app:mergeDebugAssets'.
      > Could not create task ':app:mergeDebugAssets'.
         > Cannot use @TaskAction annotation on method IncrementalTask.taskAction$gradle_core() because interface org.gradle.api.tasks.incremental.IncrementalTaskInputs is not a valid parameter to an action method.  

android/build.gradle两处变更

复制代码
buildscript {
    ...略
    dependencies {
        classpath 'com.android.tools.build:gradle:8.7.0' // 对应gradle8.9版本
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
    ...略
}

gradle与插件版本对应关系

https://developer.android.google.cn/build/releases/gradle-plugin?hl=zh-cn

报错: Could not create an instance of type com.android.build.api.variant.impl.LibraryVariantBuilderImpl.

复制代码
FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':uni_links'.
> Could not create an instance of type com.android.build.api.variant.impl.LibraryVariantBuilderImpl.
   > Namespace not specified. Specify a namespace in the module's build file: C:\Users\alex\AppData\Local\Pub\Cache\hosted\pub.flutter-io.cn\uni_links-0.5.1\android\build.gradle. See https://d.android.com/r/tools/upgrade-assistant/set-namespace for information about setting the namespace.

     If you've specified the package attribute in the source AndroidManifest.xml, you can use the AGP Upgrade Assistant to migrate to the namespace value in the build file. Refer to https://d.android.com/r/tools/upgrade-assistant/agp-upgrade-assistant for general information about using the AGP Upgrade Assistant.

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.

android/app/build.gradle

增加namespace, 包括所有外部引入的包,否则会报如上错误

复制代码
...略
android {
    namespace 'xxx.xxx.xxx' // 增加namespace
}
...略
相关推荐
光影少年8 小时前
Flutter生态及学习路线
学习·flutter
傅里叶15 小时前
SchedulerBinding 的三个Frame回调
前端·flutter
立方世界15 小时前
Flutter技术栈深度解析:从架构设计到性能优化
flutter
前端 贾公子15 小时前
《Vuejs设计与实现》第 18 章(同构渲染)(上)
android·flutter
ZFJ_张福杰15 小时前
【Flutter】约束错误总结(Constraint Error 全面解析)
flutter
程序员老刘2 天前
2025年Flutter状态管理新趋势:AI友好度成为技术选型第一标准
flutter·ai编程·客户端
AGG_Chan2 天前
flutter专栏--深入了解widget原理
开发语言·javascript·flutter
墨客希2 天前
通俗易懂的理解Vue.js
vue.js·flutter
—Qeyser2 天前
Flutter bottomNavigationBar 底部导航栏
flutter