本頁說明如何將 Bazel 與 IntelliJ、Android Studio 和 CLion 等 IDE 整合 (或建構自己的 IDE 外掛程式)。此外,還提供安裝和外掛程式詳細資料的連結。
IDE 會以各種方式整合 Bazel,包括允許從 IDE 執行 Bazel 的功能,以及瞭解 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 的外掛程式存放區下載 ZIP 檔案,然後透過 IDE 的外掛程式瀏覽器安裝 ZIP 檔案:
Xcode
Tulsi 和 XCHammer 會從 Bazel BUILD
檔案產生 Xcode 專案。
Visual Studio Code
VS Code 的官方外掛程式。
功能:
- Bazel 建構目標樹狀結構
- 在建構期間偵錯
.bzl
檔案 (設定中斷點、逐步檢查程式碼、檢查變數等)
在 Visual Studio Marketplace 尋找外掛程式。這個外掛程式是開放原始碼。
另請參閱:自動完成原始碼
Atom
在 Atom 套件管理員中尋找 language-bazel
套件。
Vim
請參閱 bazelbuild/vim-bazel
GitHub 頁面
Emacs
請參閱 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 對 cc
和 objc
程式碼編譯方式的瞭解,包括如何為其他平台設定交叉編譯。
Java
georgewfraser/java-language-server
- Java 語言伺服器 (LSP),支援以 Bazel 建構的專案
在檔案變更時自動執行建構和測試作業
Bazel 監控工具可在原始碼檔案變更時,建構 Bazel 目標。
建構自己的 IDE 外掛程式
請參閱 IDE 支援網誌文章,進一步瞭解建構 IDE 外掛程式時要使用的 Bazel API。