Flutter 3.19.0升级后Android端Dexing错误求助
解决方案:Flutter 3.19.0 Android Dexing错误修复
以下是针对你遇到的Dexing错误的可行修复步骤,按顺序尝试:
1. 彻底清理缓存
缓存冲突是这类问题的常见诱因,执行以下操作:
- 运行Flutter清理命令:
flutter clean - 删除Android项目内的Gradle缓存目录:
rm -rf android/.gradle # Linux/macOS,Windows手动删除android/.gradle文件夹 - 删除全局Gradle缓存:
rm -rf ~/.gradle/caches # Linux/macOS,Windows删除C:\Users\<你的用户名>\.gradle\caches
2. 对齐Kotlin与Gradle插件版本
Flutter 3.19.0默认适配Kotlin 1.9.20和Gradle插件8.2.0,检查并修改android/build.gradle:
buildscript { ext.kotlin_version = '1.9.20' repositories { google() mavenCentral() } dependencies { classpath "com.android.tools.build:gradle:8.2.0" classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath 'com.google.gms:google-services:4.4.1' // 升级到最新兼容版 } }
3. 升级Firebase及相关依赖
错误日志中涉及的依赖版本较旧,与Flutter 3.19的环境不兼容,更新android/app/build.gradle中的依赖:
dependencies { implementation 'com.google.firebase:firebase-auth:23.0.0' implementation 'com.google.android.gms:play-services-location:21.2.0' implementation 'com.google.android.recaptcha:recaptcha:18.5.0' }
同时更新pubspec.yaml中的FlutterFire插件(如firebase_core、firebase_auth)到最新版本,执行flutter pub upgrade。
4. 调整Dexing优化配置(临时缓解)
若上述步骤无效,可尝试禁用R8全模式或关闭调试版的代码缩减:
- 在
gradle.properties添加:android.enableR8.fullMode=false - 或在
android/app/build.gradle的buildTypes中设置:buildTypes { debug { minifyEnabled false shrinkResources false } }
5. 验证Java版本
Flutter 3.19.0要求使用Java 17,检查本地JDK版本:
java -version
若版本不符,在android/gradle.properties中指定JDK 17路径:
org.gradle.java.home=/path/to/your/jdk17
内容的提问来源于stack exchange,提问作者Munsif Ali
相关产品推荐
相关产品推荐

