Bazel'i IDE'lerle entegre etme

Sorun bildir Kaynağı göster Nightly · 8.0 · 7.4 · 7.3 · 7.2 · 7.1 · 7.0 · 6.5

Bu sayfada, Bazel'in IntelliJ, Android Studio ve CLion gibi IDE'lerle nasıl entegre edileceği (veya kendi IDE eklentinizi oluşturma) açıklanmaktadır. Ayrıca, yükleme ve eklenti ayrıntılarının bağlantıları da yer alır.

IDE'ler, Bazel'in IDE içinden çalıştırılmasına olanak tanıyan özelliklerden BUILD dosyalarında söz dizimi vurgulama gibi Bazel yapılarının farkındalığına kadar çeşitli şekillerde Bazel ile entegre edilir.

Bazel için bir düzenleyici veya IDE eklentisi geliştirmek istiyorsanız lütfen Bazel Slack'teki #ide kanalına katılın veya bazel-dev posta listesine e-posta gönderin.

IDE'ler ve düzenleyiciler

IntelliJ, Android Studio ve CLion

IntelliJ, Android Studio ve CLion için resmi eklenti. Eklenti açık kaynaktır.

Bu, Google'da dahili olarak kullanılan eklentinin açık kaynak sürümüdür.

Özellikler:

  • Dile özgü eklentilerle birlikte çalışabilir. Desteklenen diller arasında Java, Scala ve Python yer alır.
  • Bazel hedefleri hakkında semantik bilgi sahibi olan BUILD dosyalarını IDE'ye aktarın.
  • IDE'nizi, Bazel'in BUILD ve .bzl dosyaları için kullanılan Starlark dilinden haberdar edin
  • Doğrudan IDE'den ikili dosyaları derleyin, test edin ve çalıştırın
  • Hata ayıklama ve ikili dosyaları çalıştırmak için yapılandırmalar oluşturun.

Yüklemek için IDE'nin eklenti tarayıcısına gidin ve Bazel ifadesini arayın.

Eski sürümleri manuel olarak yüklemek için JetBrains'in Eklenti Deposu'ndan zip dosyalarını indirin ve IDE'nin eklenti tarayıcısında zip dosyasını yükleyin:

Xcode

Tulsi ve XCHammer, Bazel BUILD dosyalarından Xcode projeleri oluşturur.

Visual Studio Code

VS Code için resmi eklenti.

Özellikler:

  • Bazel derleme hedefleri ağacı
  • Derleme sırasında .bzl dosyaları için Starlark hata ayıklayıcı (kesme noktaları ayarlama, kodda adımlama, değişkenleri inceleme vb.)

Visual Studio pazar yerindeki eklentiyi bulun. Eklenti açık kaynaktır.

Ayrıca bkz. Kaynak Kodu için Otomatik Tamamlama

Atom

Atom paket yöneticisinde language-bazel paketini bulun.

Vim

GitHub'daki bazelbuild/vim-bazel bölümüne bakın.

Emacs

GitHub'daki bazelbuild/bazel-emacs-mode bölümüne bakın.

Visual Studio

Lavender, derleme için Bazel kullanan Visual Studio projeleri oluşturmaya yönelik deneysel bir projedir.

Güneş/ay tutulması

Bazel Eclipse Özelliği, Bazel paketlerini Eclipse projeleri olarak Eclipse çalışma alanına aktarmak için kullanılan bir eklenti grubudur.

Kaynak Kodu için Otomatik Tamamlama

C Dil Ailesi (C++, C, Objective-C ve Objective-C++)

hedronvision/bazel-compile-commands-extractor, VSCode, Vim, Emacs ve Sublime gibi birçok genişletilebilir düzenleyicide otomatik tamamlamayı etkinleştirir. clangd ve ccls gibi dil sunucularının ve diğer araç türlerinin, diğer platformlar için çapraz derlemeyi nasıl yapılandırdığı da dahil olmak üzere cc ve objc kodunun nasıl derleneceği konusunda Bazel'in bilgisinden yararlanmasına olanak tanır.

Java

georgewfraser/java-language-server: Bazel ile oluşturulan projeleri destekleyen Java Language Server (LSP)

Dosya değişikliğinde derleme ve testi otomatik olarak çalıştırma

Bazel izleyici, kaynak dosyalar değiştiğinde Bazel hedeflerini derlemek için kullanılan bir araçtır.

Kendi IDE eklentinizi oluşturma

IDE eklentisi oluştururken kullanılacak Bazel API'leri hakkında daha fazla bilgi edinmek için IDE desteği blog yayınını okuyun.