build_runner 包提供了一种编译、启动服务、和测试 web 应用的方式。使用build_runner代替弃用的pub build和pub serve命令。
配置 build_runner
要使用build_runner,往你的应用的 pubspec 中添加这些开发依赖:
// quickstart/pubspec.yaml (build dependencies)
dev_dependencies:
# ···
build_runner: ^0.8.2
build_test: ^0.10.0
build_web_compilers: ^0.3.6
build_test包是可选的;如果你要测试你的应用,那就添加它。
像平常一样pubspec.yaml改变后,运行pub get或pub upgrade:
pub get
命令:serve
要运行一个开发服务器,使用serve命令:
pub run build_runner serve
默认会分别在端口8080和8081,为web和test目录启动服务。
当serve命令运行后,每次变化保存后都会触发一个重新编译。
命令:build
使用build命令来编译你的 web 应用:
pub run build_runner build [--release] [--output <dirname>] ..
第一次编译是最慢的。在那之后,资源缓存在磁盘上并增量编译更快。
当你编辑后要连续不断地运行编译,使用watch命令。
默认,build_runner使用 dartdevc web 编译器。要编译你的应用的生产版本,添加--release,它使用的是dart2js 编译器:
pub run build_runner build --release
更多信息请看 Switching to dart2js.。
编译配置文件
你可以使用编译配置文件自定义你的编译。默认的编译配置文件名是build.yaml。
你也可以创建像build.name.yaml这样的命名的配置文件。例如,如果你有一个名为build.debug.yaml的编译配置文件,使用它代替build.yaml,像这样:
pub run build_runner build --config debug
更多信息请看 Customizing builds 以及 build_web_compilers configuration。