引入video_editor:^2.1.0与ffmpeg_kit_flutter_audio依赖冲突求助
解决ffmpeg_kit_flutter_audio与video_editor依赖冲突的重复类问题
冲突原因
video_editor: ^2.1.0 内部依赖了 ffmpeg_kit_flutter_min_gpl,而你手动引入了 ffmpeg_kit_flutter_audio:5.1.0-LTS,两者同属ffmpeg-kit系列但为不同变体,导致Android构建时出现com.arthenica.ffmpegkit相关类重复。
解决方法
方法1:排除video_editor中的ffmpeg依赖(推荐)
在pubspec.yaml中修改video_editor的依赖配置,排除其自带的ffmpeg_kit_min_gpl,强制使用你已引入的audio版本:
dependencies: ffmpeg_kit_flutter_audio: 5.1.0-LTS video_editor: version: ^2.1.0 exclude: - ffmpeg_kit_flutter_min_gpl
方法2:统一ffmpeg-kit版本(覆盖依赖)
通过dependency_overrides指定统一的ffmpeg-kit版本,让两个包共用同一版本的底层库:
dependency_overrides: ffmpeg_kit_flutter_min_gpl: 5.1.0-LTS
注意:此方法会让video_editor使用你指定的LTS版本,需确认该版本能满足video_editor的功能需求;另外
ffmpeg_kit_flutter_min_gpl采用GPL协议,若你的项目不适用GPL,建议优先用方法1。
方法3:Android端直接排除重复模块
在android/app/build.gradle的android块中添加配置,排除冲突的ffmpeg-kit-min-gpl模块:
android { // 其他已有配置... configurations { all { exclude group: 'com.arthenica', module: 'ffmpeg-kit-min-gpl' } } }
验证步骤
- 执行命令清理缓存:
flutter clean - 重新拉取依赖:
flutter pub get - 重新构建项目:
flutter run
内容的提问来源于stack exchange,提问作者Rafael Dos Santos Coladelo
相关产品推荐
相关产品推荐

