Esta página aborda como integrar o Bazel a ambientes de desenvolvimento integrado, como IntelliJ, Android Studio e CLion (ou criar seu próprio plug-in de ambiente de desenvolvimento integrado). Ele também inclui links para detalhes de instalação e plug-ins.
Os ambientes de desenvolvimento integrado se integram ao Bazel de várias maneiras, desde recursos que permitem execuções do Bazel no ambiente até o reconhecimento de estruturas do Bazel, como o destaque de sintaxe dos arquivos BUILD
.
Se você quiser desenvolver um plug-in de editor ou IDE para o Bazel, participe do canal #ide
no Slack do Bazel ou inicie uma discussão no GitHub.
IDEs e editores
IntelliJ, Android Studio e CLion
Plug-in oficial para IntelliJ, Android Studio e CLion. O plug-in é de código aberto.
Esta é a versão de código aberto do plug-in usado internamente no Google.
Recursos:
- Interop com plug-ins específicos de linguagem. As linguagens compatíveis incluem Java, Scala e Python.
- Importe arquivos
BUILD
para o ambiente de desenvolvimento integrado com reconhecimento semântico de destinos do Bazel. - Faça com que seu ambiente de desenvolvimento integrado reconheça o Starlark, a linguagem usada nos arquivos
BUILD
e.bzl
do Bazel. - Crie, teste e execute binários diretamente no IDE
- Crie configurações para depurar e executar binários.
Para instalar, acesse o navegador de plug-ins do ambiente de desenvolvimento integrado e pesquise Bazel
.
Para instalar manualmente versões mais antigas, faça o download dos arquivos ZIP do repositório de plug-ins da JetBrains e instale o arquivo ZIP no navegador de plug-ins do ambiente de desenvolvimento integrado:
Xcode
rules_xcodeproj, Tulsi e XCHammer geram projetos do Xcode com arquivos BUILD
do Bazel.
Visual Studio Code
Plug-in oficial para VS Code.
Recursos:
- Árvore de destinos de build do Bazel
- Depurador do Starlark para arquivos
.bzl
durante um build (defina pontos de interrupção, analise o código linha por linha, inspecione variáveis etc.)
Encontre o plug-in no Visual Studio Marketplace. O plug-in é de código aberto.
Consulte também: Preenchimento automático para código-fonte
Atom
Encontre o pacote language-bazel
no gerenciador de pacotes do Atom.
Consulte também: Preenchimento automático para código-fonte
Vim
Consulte bazelbuild/vim-bazel
no GitHub
Consulte também: Preenchimento automático para código-fonte
Emacs
Consulte bazelbuild/bazel-emacs-mode
no
GitHub
Consulte também: Preenchimento automático para código-fonte
Visual Studio
Lavender é um projeto experimental para gerar projetos do Visual Studio que usam o Bazel para build.
Eclipse
O recurso do Bazel Eclipse é um conjunto de plug-ins para importar pacotes do Bazel para um espaço de trabalho do Eclipse como projetos do Eclipse.
Preenchimento automático para código-fonte
Família de linguagens C (C++, C, Objective-C e Objective-C++)
O hedronvision/bazel-compile-commands-extractor
permite preenchimento automático, navegação inteligente, correções rápidas e muito mais em uma ampla variedade de editores extensíveis, incluindo VSCode, Vim, Emacs, Atom e Sublime. Ele permite que servidores de linguagem, como clangd e ccls, e outros tipos de ferramentas usem o entendimento do Bazel sobre como o código cc
e objc
será compilado, incluindo como ele configura a compilação cruzada para outras plataformas.
Java
georgewfraser/java-language-server
: servidor de linguagem Java (LSP) com suporte a projetos criados com o Bazel.
Executar build e teste automaticamente na mudança de arquivo
O Bazel watcher é uma ferramenta para criar destinos do Bazel quando os arquivos de origem mudam.
Como criar seu próprio plug-in de ambiente de desenvolvimento integrado
Leia a postagem do blog sobre suporte a IDEs para saber mais sobre as APIs do Bazel que podem ser usadas ao criar um plug-in de IDE.