flutter开发项目编译失败依赖冲突的解决方法dependency_overrides

1. 问题

  • 在复杂的稍等大点的flutter项目当中,依赖各种第三方框架是很正常,而且也有有很多依赖的,但有时难免存在不同的框架刚好使用了同一个依赖库的不同版本,特别是依赖了系统的某个库的不同版本
  • 这个时候就难免会出现同一个依赖库不同版本冲突的编译失败问题

2. 现象

Because flutter_ume 1.1.2 depends on vm_service ^9.4.0 and no versions of flutter_ume match >1.1.2 <2.0.0, flutter_ume ^1.1.2 requires vm_service ^9.4.0.
And because every version of flutter_test from sdk depends on vm_service 13.0.0 and every version of base_utils from path depends on flutter_ume ^1.1.2, flutter_test from sdk is incompatible with base_utils from path.
And because every version of common_data from path depends on base from path which depends on base_utils from path, flutter_test from sdk is incompatible with common_data from path.
So, because common_modules depends on both common_data from path and flutter_test from sdk, version solving failed.
  • 一大串文字说明,大概的意思就是flutter_ume这个库依赖了系统的vm_service库版本是^9.4.0,而flutter_test这个库依赖了系统的vm_service库版本是13.0.0的,出现了版本冲突

3. 解决方法

  • 可以使用dependency_overrides关键字强制依赖某个版本,即可解决。
  • 在pubspec.yaml文件添加以下内容,让项目强制依赖vm_service版本为13.0.0就可以解决,如下所示
dependency_overrides:
vm_service: ^13.0.0
posted @   yongfengnice  阅读(850)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
历史上的今天:
2023-05-16 android开发mac系统搭建flutter开发环境
2022-05-16 android开发让App永不闪退,永不crash的解决方法
2022-05-16 android开发如何让Parcelable的使用和Serializable一样简单的解决方法
2020-05-16 android开发全屏切换代码,记录一下
点击右上角即可分享
微信分享提示