Bazel是一个 开源 的构建和测试工具,类似于Make、Maven及Gradle。它使用一种人易于理解的高级构建语言。Bazel支持多种开发语言的项目,能够基于多个平台来构建。Bazel支持跨多个制品库和大规模用户的大型代码仓库。
Bazel具有以下优势:
高级构建语言Bazel使用一种抽象的、人易于理解的、语义级别的高级语言来描述项目的构建属性。与其他工具不同,Bazel基于库,二进制文件,脚本和 数据集 的概念进行操作,使您免于陷入将单个调用编写到编译器和链接器等工具的复杂性。
Bazel高效可靠Bazel缓存以前完成的所有工作,并跟踪文件内容和构建命令的更改。通过这种方式,Bazel知道何时需要重建某些东西,并仅重建那些东西。为了进一步加快构建速度,您可以将项目设置为以并行和增量的方式构建。
Bazel是跨平台的Bazel可以在Linux,macOS和Windows上运行。Bazel可以为同一个项目中的多个平台(包括桌面,服务器和移动设备)构建二进制文件和可部署软件包。
Bazel扩展性强Bazel在使用100k+源文件处理构建时仍然保持良好的性能表现。它适用于多个制品存储库和10K用户规模。
Bazel是可扩展的您可以扩展Bazel以支持您选择的语言。