Flutter 错误:在pubspec.yaml中找不到目录项

Flutter 错误:在pubspec.yaml中找不到目录项,flutter,Flutter,我正在尝试在flutter应用程序中添加来自外部包的资产 如本文所述: 我得到了这个错误:在pubspec.yaml/project/location//packages中找不到目录项,即使添加这个不能为null的简单项 assets: - packages/ 说明如何从依赖项添加资产 assets: - packages/some_package/backgrounds/background1.png 将从包some\u包中添加资产lib/backgrounds/b

我正在尝试在flutter应用程序中添加来自外部包的资产 如本文所述:

我得到了这个
错误:在pubspec.yaml/project/location//packages
中找不到目录项,即使添加这个不能为null的简单项

  assets:
    - packages/
说明如何从依赖项添加资产

  assets:
    - packages/some_package/backgrounds/background1.png
将从包
some\u包中添加资产
lib/backgrounds/background1.png

软件包中的资产尚不支持添加整个目录,您需要单独添加每个资产文件(但会自动识别来自解析子目录的文件)

添加资产目录也不支持从应用程序包中添加目录树。仅识别所列目录正下方的所有文件(同样包括解析子目录)

我通过以下方式解决了我的问题:

  • 将资产文件夹移出lib文件夹,即根文件夹。
  • 重新启动我的编辑器
  • 将资产文件夹移回lib文件夹。

  • 如果您100%确定pubspec.yaml是正确的(2个空格用于资源,4个空格用于子文件夹:
    ---如果不确定,则在此行下方复制以获得正确的缩进---

    资产:
    -图像/
    -资产/

    然后看一看项目树,我从一个旧项目复制了资产和图像文件夹,错误地将它们设置在项目树上的错误位置(在这种情况下,简单的拖放可以解决问题),然后是一个新的包


    请尝试其他目录名好吗?
    软件包在较旧的Dart版本中保留。可能存在一个尚未完全删除的错误。实际上,我已在pubspec.yaml中添加了外部软件包,该软件包的lib/目录中有资产。我如何访问这些资产?感谢一切正常,您愿意吗通过一个例子来解释这一点(来自分辨率子目录的文件会自动识别)”,分辨率子目录是什么?它在中被命名为分辨率感知图像资产(我指的是像
    2.0x
    3.0x
    ,…)好的,我可以从另一个文件(例如任何文本文件)加载资产名称吗,因为我必须从非解析子目录添加近5000个名称,而且我不想将所有名称都添加到我的pubbec.yamlc中,目前据我所知还没有。检查GitHub有关相关功能请求的问题。最好使用一些数据库(键值存储)为此,请将所有内容放入其中,以获取单个资产文件,然后在应用程序中读取该文件。在第一次加载应用程序时,您可能需要将资产复制到普通文件中,才能将其作为文件访问(使用
    dart:io/file