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

Flutter项目添加intl依赖报错,求助解决并安装新版本处理日期时间

解决Flutter添加intl依赖时的"A dependency may only have one source"错误

错误原因

  1. 使用了错误的依赖安装命令:flutter pub get --intl: ^0.19.0 不符合pub工具的使用规范,pub get无需通过命令行参数直接指定依赖版本,需先修改pubspec.yaml再执行命令。
  2. pubspec.yaml依赖结构错误:将intl嵌套在了dev_dependencies下的flutter_test依赖内部,每个依赖项仅能配置自身的来源,嵌套其他依赖会导致解析报错。

修正步骤

1. 调整pubspec.yaml的依赖结构

因为你需要用intl处理项目中的日期时间显示(属于运行时依赖),所以将其移至dependencies节点下,确保每个依赖都是同级独立项:

dependencies:
  flutter:
    sdk: flutter
  intl: ^0.19.0  # 移至此处,与其他依赖同级
  cupertino_icons: ^1.0.6

dev_dependencies:
  flutter_test:
    sdk: flutter
  flutter_lints: ^3.0.1

若仅在测试代码中使用intl,可将其移至dev_dependencies节点下(与flutter_test同级),但绝不能嵌套在flutter_test内部。

2. 执行正确的依赖获取命令

在项目根目录下运行:

flutter pub get

关键说明

依赖项必须保持同级结构,不能嵌套在其他依赖的配置块中,否则pub工具无法正确识别每个依赖的来源,从而抛出"A dependency may only have one source"错误。

内容的提问来源于stack exchange,提问作者ARPAN MONDAL

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 01:49:57