Integra Bazel con IDE

Informa un problema Ver código fuente

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

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

Si te interesa desarrollar un editor o un complemento IDE para Bazel, únete al canal #ide en Bazel Slack 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.

Atributos:

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

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

Para instalar manualmente versiones anteriores, descarga los archivos ZIP desde el repositorio de complementos de JetBrains y, luego, instala el archivo ZIP desde el navegador del complemento IDE:

Xcode

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

Código de Visual Studio

Complemento oficial de VS Code.

Atributos:

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

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

Consulta también: Autocompletar en código fuente

Atom

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

Consulta también: Autocompletar en código fuente

Vim

Consulta bazelbuild/vim-bazel en GitHub.

Consulta también: Autocompletar en código fuente

Emacs

Consulta bazelbuild/bazel-emacs-mode en GitHub.

Consulta también: Autocompletar en código fuente

Visual Studio

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

Eclipse

La función de Eclipse de Bazel es un conjunto de complementos para importar paquetes de Bazel a un lugar de trabajo de Eclipse como proyectos de Eclipse.

Autocomplete para código fuente

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

hedronvision/bazel-compile-commands-extractor permite el autocompletado, la navegación inteligente, 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 lenguajes, como clangd y ccls, y otros tipos de herramientas, aprovechen la comprensión de Bazel sobre cómo se compilarán los códigos cc y objc, incluido cómo configura la compilación cruzada para otras plataformas.

Java

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

Ejecutar automáticamente la compilación y la prueba en el cambio de archivo

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

Cómo compilar tu propio complemento de IDE

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