Flutter添加依赖后Android编译报错:未用path_provider却触发异常
检查间接依赖
执行flutter pub deps查看完整依赖树,定位是哪个第三方包间接引入了path_provider_android。很多常用包(如存储、状态管理类)都会隐式依赖它。找到后可以尝试锁定该依赖的稳定版本,或者替换为无此依赖的替代包。强制指定
path_provider_android版本
在pubspec.yaml中添加dependency_overrides块,强制指定一个兼容的稳定版本:dependency_overrides: path_provider_android: ^2.0.27执行
flutter pub get后重新编译,这个操作会覆盖间接依赖的版本,解决版本冲突导致的依赖解析问题。清理Gradle本地缓存
除了flutter clean,手动清理Gradle全局缓存:- 找到用户目录下的
.gradle文件夹(Windows:C:\Users\<你的用户名>\.gradle;Mac/Linux:~/.gradle) - 删除
caches子目录 - 回到项目执行
flutter clean→flutter pub get,再尝试编译。
- 找到用户目录下的
校验Android Gradle插件与Gradle版本匹配
打开android/build.gradle文件,确保com.android.tools.build:gradle的版本和项目根目录gradle/wrapper/gradle-wrapper.properties中的distributionUrl对应的Gradle版本匹配(例如插件7.4.2对应Gradle 7.5)。版本不匹配会导致依赖解析异常,调整后执行flutter clean和flutter pub get再编译。重新生成Android项目配置
备份项目中的android文件夹(避免丢失自定义配置如签名、权限),然后执行flutter create --platforms android .重新生成Android相关文件,之后恢复自己的自定义配置再编译。
内容的提问来源于stack exchange,提问作者Sarthak Tambde

