内容

build_runner

The build_runner 包提供了用于生成文件的通用命令,包括测试生成的 文件或同时提供源文件和生成文件。此页面说明了如何使用 build_runner。若要了解如何将 build_runner 与特定包一起使用,请参阅该包的文档。

build_runner 命令使用构建器——使用 Dart 构建系统 从输入文件生成输出文件的包。例如,json_serializablebuilt_value_generator 包定义了生成 Dart 代码的构建器。

虽然 Dart 构建系统是反射(存在性能问题)和宏(Dart 的编译器不支持)的良好替代方案,但它可以做的不仅仅是读取和写入 Dart 代码。例如,sass_builder 包实现了一个构建器,它从 .scss.sass 文件生成 .css 文件。

设置 build_runner

#

若要使用 build_runner,请将对 build_runner开发依赖项 添加到您的应用的 pubspec 中

yaml
dev_dependencies:
  # ···
  build_runner: ^2.4.12
  build_test: ^2.2.2

依赖 build_test 是可选的;如果您要测试代码,请执行此操作。

与往常一样,在更改 pubspec.yaml 后,请运行 dart pub getdart pub upgrade

$ dart pub get

使用内置命令

#

以下是如何使用 build_runner build 命令的示例

$ # From a directory that contains a pubspec.yaml file:
$ dart run build_runner build

build_runner 包包含以下命令

build
执行一次性构建。
serve
运行开发服务器。您无需直接使用此命令,可以使用 webdev serve,它具有方便的默认行为。
test
运行 测试。
watch
启动一个构建服务器,该服务器会监视对输入文件的编辑。通过执行增量重建来响应更改。

更多信息

#

如果您正在处理特定于 Web 的代码,请参阅 webdev 页面。

有关使用 build_runner 的详细信息,请参阅以下内容