跳到主要內容

build_runner

build_runner 包提供了用於生成檔案的通用命令,包括測試生成的檔案或同時服務原始檔和生成的檔案。本頁面解釋瞭如何使用 build_runner。要了解如何在特定包中使用 build_runner,請參閱該包的文件。

build_runner 命令與構建器(builder)一起工作——構建器是使用 Dart 構建系統從輸入檔案生成輸出檔案的包。例如,json_serializablebuilt_value_generator 包定義了生成 Dart 程式碼的構建器。

儘管 Dart 構建系統是反射(存在效能問題)和宏(Dart 編譯器不支援)的良好替代方案,但它不僅限於讀取和寫入 Dart 程式碼。例如,sass_builder 包實現了一個構建器,可以從 .scss.sass 檔案生成 .css 檔案。

設定 build_runner

#

要使用 build_runner,請在你的應用的 pubspec 中新增對 build_runner開發依賴

yaml
dev_dependencies:
  # ···
  build_runner: ^2.4.15
  build_test: ^2.2.3

依賴 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來替代直接使用此命令,webdev serve 具有方便的預設行為。
test
執行測試。
watch
啟動構建伺服器,監聽輸入檔案的編輯。透過執行增量重建來響應更改。

更多資訊

#

如果你正在開發 Web 特定程式碼,請參閱webdev 頁面。

有關使用 build_runner 的詳細資訊,請參閱以下內容