Bazel 生態系統有一系列不斷增加及演進的規則,可支援熱門語言和套件。Bazel 的強項之一,就是能夠定義新規則,供其他人使用。
本頁面說明建議、原生和非原生 Bazel 規則。
建議的規則
以下列舉幾項建議的規則:
- Android
- C / C++
- Docker/OCI
- Go
- Haskell
- Java
- JavaScript / NodeJS
- Maven 依附元件管理
- Objective-C
- 套件建構
- 通訊協定緩衝區
- Python
- Rust
- Scala
- Shell
- Webtesting (Webdriver)
Skylib 存放區包含其他函式,可在編寫新規則和新巨集時派上用場。
上述規則已通過審查,且符合建議規則的規定。如有問題或功能要求,請與相關規則集的維護人員聯絡。
如要查看更多 Bazel 規則,請使用搜尋引擎、造訪 awesomebazel.com,或在 GitHub 上搜尋。
不適用於特定程式設計語言的原生規則
原生規則會隨 Bazel 二進位檔提供,因此在 BUILD 檔案中一律可用,且不需要 load
陳述式。
- 額外動作
- 一般
- 平台
- 工作區
嵌入非原生規則
Bazel 也會嵌入以 Starlark 編寫的其他規則。這些檔案可從 @bazel_tools
內建的外部存放區載入。