Tích hợp Bazel với các IDE

Báo cáo vấn đề Xem nguồn Nightly/3}

Trang này trình bày cách tích hợp Bazel với các IDE, chẳng hạn như IntelliJ, Android Studio và CLion (hoặc tạo trình bổ trợ IDE của riêng bạn). Báo cáo này cũng bao gồm các đường liên kết đến thông tin cài đặt và trình bổ trợ.

Các IDE tích hợp với Bazel theo nhiều cách, từ các tính năng cho phép thực thi Bazel từ trong IDE cho đến tính năng nhận biết các cấu trúc Bazel, chẳng hạn như đánh dấu cú pháp của các tệp BUILD.

Nếu bạn muốn phát triển một trình chỉnh sửa hoặc trình bổ trợ IDE cho Bazel, vui lòng tham gia kênh #ide trên Bazel Slack hoặc gửi email đến danh sách gửi thư của bazel-dev.

IDE và trình chỉnh sửa

IntelliJ, Android Studio và CLion

Trình bổ trợ chính thức cho IntelliJ, Android Studio và CLion. Trình bổ trợ này là nguồn mở.

Đây là phiên bản trình bổ trợ nguồn mở được sử dụng nội bộ tại Google.

Tính năng:

  • Tương tác với các trình bổ trợ theo ngôn ngữ cụ thể. Các ngôn ngữ được hỗ trợ bao gồm Java,Scala và Python.
  • Nhập các tệp BUILD vào IDE với khả năng nhận biết ngữ nghĩa đối với các mục tiêu Bazel.
  • Giúp IDE nhận biết Starlark, ngôn ngữ dùng cho các tệp BUILD.bzl của Bazel
  • Tạo, kiểm thử và thực thi tệp nhị phân ngay trên IDE
  • Tạo cấu hình để gỡ lỗi và chạy tệp nhị phân.

Để cài đặt, hãy chuyển đến trình duyệt trình bổ trợ của IDE rồi tìm Bazel.

Để cài đặt các phiên bản cũ theo cách thủ công, hãy tải các tệp zip xuống từ Kho lưu trữ trình bổ trợ của JetBrains và cài đặt tệp zip từ trình duyệt trình bổ trợ của IDE:

Xcode

TulsiXCHammer tạo dự án Xcode từ các tệp Bazel BUILD.

Mã Visual Studio

Trình bổ trợ chính thức cho Mã VS.

Tính năng:

  • Cây Bazel Build Targets (Mục tiêu xây dựng)
  • Trình gỡ lỗi Starlark cho các tệp .bzl trong quá trình tạo bản dựng (đặt điểm ngắt, thực hiện mã theo từng bước, kiểm tra biến, v.v.)

Tìm trình bổ trợ trên trang web thương mại Visual Studio. Trình bổ trợ này là nguồn mở.

Xem thêm: Tự động hoàn thành cho mã nguồn

Atom

Tìm gói language-bazel trên trình quản lý gói Atom.

Vim

Xem bazelbuild/vim-bazel trên GitHub

emacs

Xem bazelbuild/bazel-emacs-mode trên GitHub

Visual Studio

Lavender là một dự án thử nghiệm dùng để tạo các dự án Visual Studio có sử dụng Bazel để xây dựng.

Eclipse

Tính năng Bazel Eclipse là một tập hợp các trình bổ trợ để nhập các gói Bazel vào không gian làm việc của Eclipse dưới dạng các dự án Eclipse.

Tính năng tự động hoàn thành cho mã nguồn

Gia đình ngôn ngữ C (C++, C, Mục tiêu-C và Mục tiêu-C++)

hedronvision/bazel-compile-commands-extractor hỗ trợ tính năng tự động hoàn thành trong nhiều trình chỉnh sửa có thể mở rộng, chẳng hạn như VSCode, Vim, Emacs và Sublime. API này cho phép các máy chủ ngôn ngữ (như clangd, ccls) và các loại công cụ khác, dựa trên sự hiểu biết của Bazel về cách biên dịch mã ccobjc, bao gồm cả cách định cấu hình biên dịch chéo cho các nền tảng khác.

Java

georgewfraser/java-language-server – Máy chủ ngôn ngữ Java (LSP) có hỗ trợ các dự án do Bazel tạo

Tự động chạy bản dựng và kiểm thử khi thay đổi tệp

Bazel watcher là một công cụ giúp tạo các mục tiêu Bazel khi tệp nguồn thay đổi.

Xây dựng trình bổ trợ IDE của riêng bạn

Hãy đọc bài đăng trên blog về Hỗ trợ IDE để tìm hiểu thêm về các API Bazel cần sử dụng khi tạo trình bổ trợ IDE.