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

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). Trang này cũng bao gồm các đường liên kết đến thông tin chi tiết về trình bổ trợ và cách cài đặt.

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 trong IDE, đến nhận biết các cấu trúc Bazel như cú pháp làm nổi bật của tệp BUILD.

Nếu bạn quan tâm đến việc phát triển 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 bắt đầu thảo luận trên GitHub.

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 nguồn mở của trình bổ trợ được dùng nội bộ tại Google.

Tính năng:

  • Tương tác với các trình bổ trợ dành riêng cho ngôn ngữ. Các ngôn ngữ được hỗ trợ bao gồm Java, Scala và Python.
  • Nhập tệp BUILD vào IDE với nhận thức ngữ nghĩa về các mục tiêu Bazel.
  • Giúp IDE của bạn nhận biết Starlark, ngôn ngữ được dùng cho tệp BUILD.bzl của Bazel
  • Tạo, kiểm thử và thực thi tệp nhị phân trực tiếp từ 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 tệp zip xuống từ Kho lưu trữ trình bổ trợ của JetBrains rồi cài đặt tệp zip đó từ trình duyệt trình bổ trợ của IDE:

Xcode

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

Visual Studio Code

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

Tính năng:

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

Tìm trình bổ trợ trên trang web thương mại của Visual Studio marketplace. 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.

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

Vim

Xem bazelbuild/vim-bazel trên GitHub

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

Emacs

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

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

Visual Studio

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

Thuỷ

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 Eclipse dưới dạng các dự án Eclipse.

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

Họ ngôn ngữ C (C++, C, Objective-C và Objective-C++)

hedronvision/bazel-compile-commands-extractor cho phép tự động hoàn thành, điều hướng thông minh, sửa lỗi nhanh và nhiều tính năng khác trong nhiều trình chỉnh sửa có thể mở rộng, bao gồm VSCode, Vim, Emacs, Atom và Sublime. Tính năng này cho phép các máy chủ ngôn ngữ, chẳng hạn như clangd và ccls, cũng như các loại công cụ khác, dựa vào 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 quá trì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 được xây dựng bằng Bazel

Tự động chạy quá trình xây dựng và kiểm thử khi tệp thay đổi

Trình theo dõi Bazel là một công cụ để xây dựng các mục tiêu Bazel khi tệp nguồn thay đổi.

Tạo trình bổ trợ IDE của riêng bạn

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