Bazel エコシステムには、一般的な言語とパッケージをサポートするルールが増え続けています。Bazel の大きな利点は、他のユーザーが使用できる新しいルールを定義できることです。
このページでは、Bazel の推奨ルール、ネイティブ ルール、非ネイティブ ルールについて説明します。
推奨ルール
推奨されるルールは次のとおりです。
- Android
- C / C++
- Docker/OCI
- Go
- ハスケル
- Java
- JavaScript / NodeJS
- Kubernetes
- Maven の依存関係管理
- Objective-C
- パッケージのビルド
- プロトコル バッファ
- Python
- スカラ
- シェル
- Webtesting(Webdriver)
リポジトリ Skylib には、新しいルールや新しいマクロを作成する際に使用できる追加の関数が含まれています。
上記のルールは、推奨ルールの要件を遵守しているかどうかを確認し、遵守したものです。問題と機能リクエストについては、それぞれのルールセットの管理者にお問い合わせください。
Bazel ルールの詳細を確認するには、検索エンジンを使用するか、awesomebazel.com または GitHub を検索します。
特定のプログラミング言語に適用されないネイティブ ルール
ネイティブ ルールは Bazel バイナリと一緒に出荷され、常に load
ステートメントなしで BUILD ファイルで使用できます。
- その他のアクション
- 全般
- プラットフォーム
- Workspace
埋め込み以外のネイティブ ルール
Bazel には Starlark で作成された追加のルールも埋め込まれます。これらは、@bazel_tools
組み込み外部リポジトリから読み込むことができます。