Bazel 多语言构建系统
Bazel 用 BUILD/BUILD.bazel 描述目标,强调 hermetic、可缓存和增量构建。它适合大型多语言仓库和远程缓存。
bazel build //...
bazel build //app:server
bazel test //...
bazel run //app:server
bazel query 'deps(//app:server)'
bazel cquery //... --output=files
bazel clean
bazel mod graph
bazel info output_base
bazel --bazelrc=.bazelrc build //...
| 概念 | 含义 |
|---|---|
WORKSPACE/MODULE.bazel |
仓库/模块定义 |
BUILD.bazel |
目标定义 |
//app:server |
标签(包:目标) |
.bazelrc |
构建配置 |
| 远程缓存 | 跨机器复用构建结果 |
bazel query 确认。--platforms 明确。bazel-bin 等符号链接目录;不要手改。MODULE.bazel 变更后重新解析。bazel clean --expunge(谨慎)。bazel — 构建/测试cmake / meson — 其他构建系统ccache — 编译缓存