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

pubspec.yaml第6行错误:依赖仅能有一个源,flutter packages get执行失败

解决Flutter中"一个依赖只能有一个源"(指向sdk: flutter)的错误

这种问题我之前排查过好几次,大概率是你的pubspec.yaml文件里的依赖定义出现了格式问题或者重复配置,导致Pub无法正确解析sdk: flutter这个依赖项。下面是几个你可以一步步尝试的修复方案:

  • 检查pubspec.yaml的依赖格式
    首先定位到错误提示的第6行,确认flutter依赖的写法是否正确。正确的sdk: flutter依赖定义应该是这样的:

    dependencies:
      flutter:
        sdk: flutter
    

    要确保:

    • flutter依赖在dependencies块下只出现一次
    • 缩进是正确的(YAML对缩进要求严格,通常用2个空格,不要用Tab)
    • 没有给flutter依赖同时添加其他源(比如git、path),像下面这种错误写法会直接触发这个问题:
      # 错误示例:同时指定了sdk和git源
      dependencies:
        flutter:
          sdk: flutter
          git: https://github.com/flutter/flutter.git
      
  • 清理Pub缓存
    有时候本地Pub缓存损坏也会导致这类奇怪的解析错误,执行下面的命令清理缓存:

    flutter pub cache clean
    

    清理完成后,再运行flutter pub get重新拉取依赖。

  • 删除.dart_tool缓存文件夹
    如果上面的方法没用,可以试试删除项目根目录下的.dart_tool文件夹(这个是Pub自动生成的缓存目录),删除后重新执行flutter pub get,让系统重新生成所有依赖的缓存文件。

要是这些方法都解决不了,你可以把pubspec.yaml里的dependencies和dev_dependencies部分贴出来,这样可以更精准地定位问题~

内容的提问来源于stack exchange,提问作者GI HYUN NAM

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 04:06:00