跳至主要內容

build_runner

build_runner 套件提供用於產生檔案的通用命令,包括測試產生的檔案或提供原始碼和產生的檔案。本頁說明如何使用 build_runner。若要瞭解如何搭配特定套件使用 build_runner,請參閱該套件的文件。

build_runner 命令與builders搭配使用,這些套件使用Dart 建置系統從輸入檔案產生輸出檔案。例如,json_serializablebuilt_value_generator 套件定義了產生 Dart 程式碼的 builders。

雖然 Dart 建置系統是反射 (有效能問題) 和巨集 (Dart 編譯器不支援) 的良好替代方案,但它不僅可以讀取和寫入 Dart 程式碼。例如,sass_builder 套件實作了一個 builder,可從 .scss.sass 檔案產生 .css 檔案。

設定 build_runner

#

若要使用 build_runner,請將 build_runner開發依賴項新增至應用程式的 pubspec

yaml
dev_dependencies:
  # ···
  build_runner: ^2.4.13
  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 的詳細資訊,請參閱以下內容