Flutter项目mergeDexDebug报错:BuildConfig重复及Multidex配置无效求助
Flutter构建报错:mergeDexDebug失败(重复BuildConfig类)
错误核心信息
构建时触发DexArchiveMergerException,核心提示为com.goodnewshub.app.BuildConfig类被重复定义,涉及两个路径:
- 项目本地构建产物:
/Users/kavyabhargava/FlutterDev/goodnews_app/android/app/build/intermediates/project_dex_archive/debug/out/com/goodnewshub/app/BuildConfig.dex - 依赖库
cached_video_player-2.0.4的构建产物:/Users/kavyabhargava/.pub-cache/hosted/pub.dev/cached_video_player-2.0.4/android/build/.transforms/633574647222525a434eb21c493916d5/transformed/classes/classes.dex
已在app/build.gradle添加Multidex配置但问题仍存在:
defaultConfig { multiDexEnabled true } dependencies { implementation 'com.android.support:multidex:1.0.3' }
解决建议
升级
cached_video_player依赖版本:你使用的2.0.4版本存在打包缺陷,会生成与项目同包名的BuildConfig类。在pubspec.yaml中将该库更新至最新稳定版,执行以下命令后重新构建:flutter pub upgrade cached_video_player flutter clean flutter run清理本地构建缓存:彻底清除旧构建产物和缓存,避免残留文件干扰:
flutter clean rm -rf android/.gradle flutter pub get排查包名冲突:检查项目包名(位于
android/app/src/main/AndroidManifest.xml的package属性)是否与cached_video_player的Android模块包名重复。若存在冲突,可修改项目包名,或更换无冲突的视频播放器替代库。Gradle排除重复类规则:若暂时无法升级依赖,可在
android/app/build.gradle中针对cached_video_player添加排除配置:dependencies { // 保留其他原有依赖 implementation('cached_video_player:2.0.4') { exclude group: 'com.goodnewshub.app' } }
注:Multidex提示是方法数超限的伴随问题,解决重复类冲突后,已配置的Multidex规则即可正常生效。
内容的提问来源于stack exchange,提问作者Arkham007
相关产品推荐
相关产品推荐

