在我的第一个Dart(命令行)应用程序中,我使用了3个类。最初它们都在同一个源文件中。一切正常。然后我决定将一个类移动到一个新创建的库中。我创建了一个类型为“Package Template”的新项目,并将顶部添加了库标记行的类文件放到'lib'文件夹中(与其他库包一样,并在pub文件结构约定中描述)。
为了能够使用库类我理解我必须首先从库包的yaml文件中“运行pub build”。当我这样做时,我收到错误消息:
Pub build failed, [65] There are no source directories present.
The default directories are "benchmark", "bin", "example", "test" and "web".
我的源文件位于'lib'目录中。我已经看到所有已安装的软件包都是这种情况,并在pub文档中以这种方式进行了描述。我不知道我在这里想念的是什么。任何提示都表示赞赏。
答案 0 :(得分:1)
您无需运行pub build
即可使用库。您需要pub build
从Dart为浏览器应用程序生成JavaScript。
您的问题不包含有关您的包目录布局或文件内容的大量信息
- 包含main()
的文件需要位于错误消息中列出的目录之一
- 包含main()
的文件需要导入语句import 'package:your_package/your_lib_file.dart';
因此,您可以启动应用程序并使用程序包的lib
目录中的库。