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

Flutter更新后构建失败:flutter.gradle第912行Jar.destinationDir方法异常

Flutter构建失败(Jar.destinationDir参数不兼容)解决方案

问题根源

本地Gradle版本较高(7.x及以上),而Flutter的flutter.gradle脚本仍在使用Gradle已废弃的destinationDir(File)方法,该方法在高版本Gradle中已被替换为destinationDirectory.set(File),导致参数类型不匹配报错。

解决步骤

1. 优先升级Flutter到稳定版(推荐)

运行以下命令升级到最新稳定版,官方会同步适配Gradle版本,从根源解决兼容性问题:

flutter channel stable
flutter upgrade

2. 手动对齐Gradle与Flutter版本

如果暂时无法升级Flutter,可手动调整Gradle版本适配当前Flutter:

  • 修改android/build.gradle中的Gradle插件版本:
    buildscript {
        dependencies {
            // 替换为当前Flutter版本兼容的Gradle插件版本,比如Flutter 3.10对应7.4.2
            classpath 'com.android.tools.build:gradle:7.4.2'
        }
    }
    
  • 修改android/gradle/wrapper/gradle-wrapper.properties中的Gradle分发版本:
    // 对应上面插件版本的Gradle发行版,7.4.2插件对应7.5版本Gradle
    distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
    

3. 临时修改flutter.gradle脚本(不推荐长期使用)

找到报错的文件C:\src\flutter\packages\flutter_tools\gradle\flutter.gradle,定位到第912行:

  • 将原代码中类似jar.destinationDir = file(...)的语句,替换为:
    jar.destinationDirectory.set(file(...))
    
    注意保留原文件中的路径参数,仅修改方法调用部分。

4. 清理并重新构建

完成上述操作后,执行以下命令清理缓存并重新构建:

flutter clean
# Windows系统直接手动删除android/.gradle文件夹
flutter run

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 22:05:51