Bazel 生态系统有一套不断发展演变的规则,支持热门语言和软件包。Bazel 的强大之处在于,它能够定义可供他人使用的新规则。
本页面介绍了推荐、原生和非原生 Bazel 规则。
推荐规则
以下是一系列推荐规则:
- Android
- C / C++
- Docker/OCI
- Go
- Haskell
- Java
- JavaScript / NodeJS
- Kubernetes
- Maven 依赖项管理
- Objective-C
- 软件包构建
- 协议缓冲区
- Python
- Scala
- 壳牌
- Webtesting (Webdriver)
代码库 Skylib 包含一些可以在编写新规则和新宏时很有用的函数。
上述规则已经过审核,遵循我们的推荐规则要求。如有问题和功能请求,请与相应规则集的维护人员联系。
如需查找更多 Bazel 规则,请使用搜索引擎、在 awesomebazel.com 中查找或在 GitHub 中搜索。
不适用于特定编程语言的原生广告规则
原生规则随 Bazel 二进制文件一起提供,并且始终在不含 load
语句的 build 文件中提供。
- 其他操作
- 常规
- 平台
- 工作区
嵌入式非原生规则
Bazel 还嵌入了使用 Starlark 编写的其他规则。这些代码可以从 @bazel_tools
内置外部代码库加载。