Flutter安装just_audio后报':audio_session:compileDebugJavaWithJavac'错误如何解决
问题解决方案
错误根因
本次构建失败是因为audio_session:0.1.6+1依赖的androidx.media2:media2-session:1.1.3版本已从Google官方Maven仓库下架,无法拉取对应jar包导致。
修复步骤
- 步骤1:升级音频相关依赖到适配版本
直接更新pubspec.yaml中的依赖配置,移除单独声明的just_audio_platform_interface(主包会自动匹配兼容版本,单独声明易引发版本冲突):
修改完成后执行命令拉取新依赖:just_audio: ^0.9.35 audio_service: ^0.18.12 audio_session: ^0.1.16flutter pub get - 步骤2:强制覆盖依赖版本(可选,升级后仍报错时使用)
如果存在其他依赖强制拉取旧版本audio_session的情况,在pubspec.yaml中新增强制覆盖配置:dependency_overrides: audio_session: ^0.1.16 - 步骤3:清理缓存重新构建
执行以下命令清理旧构建缓存后重新运行项目即可:flutter clean flutter pub get
备选兼容方案(无法升级大版本时使用)
如果你的项目因为兼容性原因无法升级just_audio等依赖的大版本,可以修改安卓项目根目录下的android/build.gradle文件,在allprojects.repositories节点下新增阿里云Maven镜像,优先从镜像拉取旧版本依赖包:
allprojects { repositories { // 新增阿里云镜像,放在原有仓库配置前面优先生效 maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/public' } // 原有仓库配置保留 google() mavenCentral() } }
内容的提问来源于stack exchange,提问作者Sajad Ghorbani
相关产品推荐
相关产品推荐

