You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Dart sqljocky时遭遇依赖版本冲突问题求助

解决Dart项目引入sqljocky时的依赖版本冲突问题

你在给Angular Dart项目添加sqljocky依赖时遇到的问题,本质是老旧包之间的依赖链出现了断层——你的Angular 4.0.0和sqljocky 0.14.1都是比较早期的版本,它们间接依赖的dart_style版本范围虽看似兼容,但pub在解析时找不到能同时满足两者的可用版本。

下面给你几个可行的解决方案:

方案1:升级Angular Dart版本

Angular 4.0.0是非常老旧的版本,后续版本已经修复了很多依赖兼容问题。你可以尝试把Angular相关依赖升级到更稳定的兼容版本,修改pubspec.yaml的dependencies部分:

dependencies:
  angular: ^5.0.0
  angular_components: ^0.12.0
  sqljocky: ^0.14.1

修改完成后重新执行pub get,大概率能解决版本冲突问题。

方案2:手动锁定dart_style版本

如果暂时不想升级Angular框架,可以尝试在依赖中直接指定dart_style的具体版本,强制pub使用一个同时满足两个依赖要求的版本。修改pubspec.yaml:

dependencies:
  angular: ^4.0.0
  angular_components: ^0.8.0
  sqljocky: ^0.14.1
  dart_style: ^0.2.10 # 手动添加该依赖,锁定版本

然后执行pub get,让pub强制使用这个版本来适配两个依赖。

方案3:清理pub缓存并检查源

有时候pub的本地缓存可能会导致版本解析异常,你可以先清理缓存:

pub cache clean

另外,如果你使用了非官方的pub镜像源,可能存在部分旧版本包缺失的情况,建议切换回官方源后再执行pub get。

方案4:替换sqljocky为维护中的替代包

sqljocky 0.14.1已经停止维护很久了,你可以考虑使用它的社区维护后续包mysql_client,替换依赖:

dependencies:
  angular: ^4.0.0
  angular_components: ^0.8.0
  mysql_client: ^0.0.22 # 替换原有的sqljocky依赖

新的包不仅能解决依赖冲突,还能获得更好的兼容性和后续更新支持。

内容的提问来源于stack exchange,提问作者Lars Erhardt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 06:44:17