Integra Bazel en IDE

En esta página, se explica cómo integrar Bazel en IDEs, como IntelliJ, Android Studio y CLion (o compilar tu propio complemento de IDE). También incluye vínculos a los detalles de instalación y del complemento.

Los IDE se integran con Bazel de diversas maneras, desde funciones que permiten ejecuciones de Bazel desde el IDE hasta el conocimiento de las estructuras de Bazel, como el resaltado de sintaxis de los archivos BUILD.

Si te interesa desarrollar un complemento de editor o IDE para Bazel, únete al canal #ide en el Slack de Bazel o inicia un debate en GitHub.

IDE y editores

IntelliJ, Android Studio y CLion

Complemento oficial para IntelliJ, Android Studio y CLion. El complemento es de código abierto.

Esta es la versión de código abierto del complemento que se usa internamente en Google.

Características:

  • Interoperabilidad con complementos específicos del lenguaje Entre los lenguajes compatibles, se incluyen Java, Scala y Python.
  • Importa archivos BUILD al IDE con reconocimiento semántico de los destinos de Bazel.
  • Haz que tu IDE reconozca Starlark, el lenguaje que se usa para los archivos BUILD y .bzl de Bazel
  • Compila, prueba y ejecuta archivos binarios directamente desde el IDE
  • Crea configuraciones para depurar y ejecutar archivos binarios.

Para instalarlo, ve al navegador de complementos del IDE y busca Bazel.

Para instalar manualmente versiones anteriores, descarga los archivos ZIP del repositorio de complementos de JetBrains y, luego, instálalos desde el navegador de complementos del IDE:

Xcode

rules_xcodeproj, Tulsi y XCHammer generan proyectos de Xcode a partir de archivos BUILD de Bazel.

Visual Studio Code

Es el complemento oficial para VS Code.

Características:

  • Árbol de destinos de compilación de Bazel
  • Depurador de Starlark para archivos .bzl durante una compilación (establece puntos de interrupción, recorre el código, inspecciona variables, etcétera)

Busca el complemento en Visual Studio Marketplace. El complemento es de código abierto.

Consulta también Autocompletado para código fuente

Atom

Busca el paquete language-bazel en el administrador de paquetes de Atom.

Consulta también Autocompletado para código fuente

Vim

Consulta bazelbuild/vim-bazel en GitHub.

Consulta también Autocompletado para código fuente

Emacs

Ver bazelbuild/bazel-emacs-mode en GitHub

Consulta también Autocompletado para código fuente

Visual Studio

Lavender es un proyecto experimental para generar proyectos de Visual Studio que usan Bazel para la compilación.

Eclipse

Bazel Eclipse Feature es un conjunto de complementos para importar paquetes de Bazel a un espacio de trabajo de Eclipse como proyectos de Eclipse.

Autocompletar para código fuente

Familia de lenguajes C (C++, C, Objective-C y Objective-C++)

hedronvision/bazel-compile-commands-extractor habilita la función de autocompletar, la navegación inteligente, las correcciones rápidas y mucho más en una amplia variedad de editores extensibles, incluidos VSCode, Vim, Emacs, Atom y Sublime. Permite que los servidores de lenguaje, como clangd y ccls, y otros tipos de herramientas, se basen en la comprensión de Bazel sobre cómo se compilará el código de cc y objc, incluida la forma en que configura la compilación cruzada para otras plataformas.

Java

georgewfraser/java-language-server: Servidor de lenguaje Java (LSP) con compatibilidad para proyectos compilados con Bazel

Ejecuta automáticamente la compilación y las pruebas cuando se modifique un archivo

Bazel watcher es una herramienta para compilar destinos de Bazel cuando cambian los archivos fuente.

Cómo compilar tu propio complemento de IDE

Lee la entrada de blog sobre la compatibilidad con IDE para obtener más información sobre las APIs de Bazel que se deben usar cuando se compila un complemento de IDE.