Integrating Bazel with IDEs
IDEs integrate with Bazel in a variety of ways, from features that allow Bazel executions from within the IDE, to awareness of Bazel structures such as syntax highlighting of the BUILD files.
Supported IDEs and editors
IntelliJ, Android Studio and CLion
Status: Beta, supported by the Bazel team.
Plug-ins for Android Studio, CLion, and IntelliJ enable you to:
- Import BUILD files into the IDE
- Make your IDE aware of Starlark, the language used for Bazel’s BUILD and bzl files
- Build, test, and execute binaries directly from the IDE
Installation:
Xcode
Status: Beta, supported by the Bazel team.
Tulsi generates Bazel-compatible Xcode projects from Bazel’s BUILD
files.
Eclipse
Status: experimental, not officially supported by the Bazel team.
See installation steps on GitHub
Visual Studio Code
Status: Officially supported by the Bazel team.
Features:
- Bazel Build Targets tree
- Starlark debugger for .bzl files during a build (set breakpoints, step through code, inspect variables, etc.)
See vscode-bazel in Visual Studio marketplace
There is also an unofficial plugin that provides syntax highlighting and
formatting for Bazel BUILD
and WORKSPACE
files: bazel-code
Atom
Status: not officially supported by the Bazel team.
Vim
Status: Beta, not officially supported by the Bazel team.
See bazelbuild/vim-bazel
on GitHub
Automatically run build and test on file change
Bazel watcher is a tool for building Bazel targets when source files change.
Building your own IDE plugin
Read the IDE support blog post to learn more about the Bazel APIs to use when building an IDE plugin.