将 Bazel 与 IDE 集成

报告问题 查看来源 每晚 · 7.2。 · 7.1敬上 · 7.0 · 6.5 条 · 6.4

本页介绍了如何将 Bazel 与 IDE(例如 IntelliJ、Android)集成 Studio 和 CLion(或构建自己的 IDE 插件)。它还包含指向 安装和插件详细信息。

IDE 可通过多种方式与 Bazel 集成,包括支持 Bazel 的功能 从 IDE 内部执行操作,到了解 Bazel 结构(例如语法) 突出显示 BUILD 文件。

如果您有兴趣为 Bazel 开发编辑器或 IDE 插件,请 加入 Bazel Slack 或电子邮件上的#ide频道 bazel-dev 邮寄名单中的电子邮件。

IDE 和编辑器

IntelliJ、Android Studio 和 CLion

官方插件,用于 IntelliJ、Android Studio 和 CLion。该插件为开源插件。

这是 Google 内部使用的开源插件版本。

功能:

  • 与针对特定语言的插件互操作。支持的语言包括:Java、 Scala 和 Python。
  • BUILD 文件导入 IDE,以便了解 Bazel 目标的语义。
  • 让 IDE 了解 Starlark,它是用于 Bazel 的 BUILD.bzl 个文件
  • 直接从 IDE 中构建、测试和执行二进制文件
  • 创建用于调试和运行二进制文件的配置。

如需安装,请转到 IDE 的插件浏览器并搜索 Bazel

如需手动安装旧版本,请从 JetBrains 的 插件代码库并从 IDE 的插件浏览器安装 ZIP 文件:

Xcode

TulsiXCHammer 通过 Bazel BUILD 文件。

Visual Studio Code

VS Code 的官方插件。

功能:

  • Bazel 构建目标树
  • 构建期间可对 .bzl 文件使用 Starlark 调试程序(设置断点、步骤 通过代码、检查变量等)

在 Visual Studio 中找到该插件 购物平台。 该插件为开源插件。

另请参阅:源代码自动补全

Atom

查找 language-bazel 软件包

Vim

请参阅 GitHub 上的 bazelbuild/vim-bazel

Emac

请参阅 bazelbuild/bazel-emacs-mode GitHub

Visual Studio

Lavender 是一个实验性项目, 生成使用 Bazel 进行构建的 Visual Studio 项目。

Eclipse

Bazel Eclipse 功能 是一组插件,用于将 Bazel 软件包导入 Eclipse 工作区, Eclipse 项目。

源代码自动补全

C 语言系列(C++、C、Objective-C 和 Objective-C++)

hedronvision/bazel-compile-commands-extractor 支持在各种可扩展编辑器(包括 VSCode、Vim、Emacs 和 Sublime)中使用自动补全功能。它让语言服务器(例如 clangd 和 ccls 以及其他类型的工具)能够利用 Bazel 对 ccobjc 代码的编译方式的理解,包括它如何针对其他平台配置交叉编译。

Java

georgewfraser/java-language-server - 支持 Bazel 构建项目的 Java 语言服务器 (LSP)

针对文件更改自动运行构建和测试

Bazel watcher 用于在源文件发生更改时构建 Bazel 目标的工具。

构建您自己的 IDE 插件

阅读 IDE 支持博客 博文,详细了解 构建 IDE 插件时使用的 Bazel API。