Bazel
This article introduce the Bazel tool.
Overview
2015年,Google在Blaze的基础上发布了其开源移植版本,并命名为Bazel。
Bazel 是一款可自动执行软件构建和测试的工具。支持的 build 任务包括运行编译器和链接器以生成可执行程序和库,以及为 Android、iOS 和其他目标环境组装可部署的软件包。Bazel 与 Make、Ant、Gradle、Buck、Pants 和 Maven 等其他工具类似。
Repo
Commands
bazel [<startup options>] <command> [<args>]
bazel [<startup options>] <command> [<args>] -- [<target patterns>]
| Command | Description |
|---|---|
| help | 输出命令的帮助或索引。 |
| version | 输出 Bazel 的版本信息。 |
| license | 输出相应软件的许可。 |
| fetch | 提取目标所需的外部代码库。 |
| build | 构建指定目标。 |
| run | 运行指定的目标。 |
| coverage | 为指定的测试目标生成代码覆盖率报告。 |
| test | 构建并运行指定的测试目标。 |
| clean | 移除输出文件,并可选择停止服务器。 |
| canonicalize-flags | 对 Bazel 选项列表进行规范化处理。 |
| query | 执行依赖关系图查询。 |
| aquery | 分析给定的目标,并查询操作图。 |
| cquery | 加载、分析和查询具有配置的指定目标。 |
| mod | 查询 Bzlmod 外部依赖关系图,。 |
| info | 显示有关 Bazel 服务器的运行时信息。 |
| print_action | 输出用于编译文件的命令行实参。 |
| dump | 转储 bazel 服务器进程的内部状态。 |
| vendor | 将外部代码库提取到由标志 –vendor_dir 指定的文件夹中。 |
| mobile-install | 面向移动设备的安装目标。 |
| shutdown | 停止 bazel 服务器。 |