一个用户友好的 Bazel 启动器。
一个用户友好的 Bazel 启动器。
Bazelisk 是一个用 Go 编写的 Bazel 包装器。 它会根据你当前的工作目录自动选择合适的 Bazel 版本,如有需要则从官方服务器下载,然后透明地将所有命令行参数传递给真正的 Bazel 二进制文件。 你可以像调用 Bazel 一样调用它。
在 macOS 上:brew install bazelisk。
在 Windows 上:winget install Bazel.Bazelisk、choco install bazelisk 或 scoop install bazelisk。
以上方式都会将 bazelisk 以 bazelisk 和 bazel 两个名称添加到 PATH 中。
在 Linux 上:您可以从我们的 Releases 页面下载 Bazelisk 二进制文件,并手动将其添加到您的 PATH 中,这也适用于 macOS 和 Windows。
Bazelisk 也已发布到 npm。
前端开发者可能希望通过 npm install -g @bazel/bazelisk 来安装它。
你会注意到,它为 Bazel 提供了类似的功能,正如 用于管理 Node.js 版本的
nvm工具。 在 Linux/macOS 上,你也可以使用 mise 这个多语言工具版本管理器,命令如mise use -g bazelisk@latest。
一些使用它的想法:
bazel 二进制文件安装到你的 PATH 中(例如,复制到 /usr/local/bin/bazel)。
再也不用担心升级 Bazel 到最新版本的问题。./bazelisk build //my:software 来构建你的软件。
这样,即使是从未使用过 Bazel 或未安装它的人也能构建你的软件。.bazelversion 文件。
这将告诉 Bazelisk 在你的工作区中运行时使用文件中指定的确切版本。
由于它在你的仓库中进行了版本控制,因此可以实现 Bazel 的原子升级,包括所有必要的更改。
如果你也在 CI 机器上将 Bazelisk 安装为 bazel,你甚至可以通过常规的 presubmit / Pull Request 来测试 Bazel 升级。
它还将确保用户不会尝试使用不兼容的版本来构建你的项目。暂无开放 Issues,或尚未同步最近议题。