Bazel'i IDE'lerle entegre etme

Bu sayfada Bazel'i IntelliJ, Android Studio ve CLion gibi IDE'lerle nasıl entegre edeceğiniz (veya kendi IDE eklentinizi nasıl oluşturabileceğiniz) ele alınmaktadır. Ayrıca, yükleme ve eklenti ayrıntılarına bağlantılar içerir.

IDE'ler, IDE içinden Bazel yürütmelerine olanak tanıyan özelliklerden BUILD dosyalarının söz dizimini vurgulama gibi Bazel yapılarına kadar birçok farklı şekilde Bazel ile entegre olur.

Bazel için bir düzenleyici veya IDE eklentisi geliştirmeyle ilgileniyorsanız lütfen Bazel Slack'teki #ide kanalına katılın ya da 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 kaynaklıdır.

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

Özellikler:

  • Dile özgü eklentilerle birlikte çalışabilirlik. Desteklenen diller Java, Scala ve Python'dur.
  • BUILD dosyayı Bazel hedefleri için semantik farkındalığıyla IDE'ye aktarın.
  • IDE'nizin, Bazel'in BUILD ve .bzl dosyaları için kullanılan dil olan Starlark'ı tanımasını sağlayın
  • İkili programları doğrudan IDE'den derleyin, test edin ve yürütün
  • Hata ayıklamak ve ikili programları çalıştırmak için yapılandırmalar oluşturun.

Yüklemek için IDE'nin eklenti tarayıcısına gidip Bazel araması yapın.

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

Xcode

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

Visual Studio Kodu

VS Code için resmi eklenti.

Özellikler:

  • Bazel Hedefler ağacı
  • Derleme sırasında .bzl dosyaları için Starlark hata ayıklayıcı (ayırma noktaları ayarlama, adım adım kod yazma, değişkenleri inceleme vb.)

Visual Studio pazar yerinde eklentiyi bulun. Eklenti açık kaynaklıdır.

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

Atom

Atom paket yöneticisinde language-bazel paketini bulun.

Vim

bazelbuild/vim-bazel için GitHub'a göz atın

Emac'ler

GitHub'da bazelbuild/bazel-emacs-mode aracına bakın

Visual Studio

Lavender, derleme için Bazel kullanan Visual Studio projelerinin oluşturulması için deneysel bir projedir.

Güneş/ay tutulması

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

Kaynak Kodu İçin Otomatik Tamamlama

C Dili 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 tamamlamaya olanak tanır. 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 kodlarının nasıl derleneceği konusunda Bazel'in anlayışından yararlanmasını sağlar.

Java

georgewfraser/java-language-server - Bazel tarafından oluşturulmuş projeler için desteklenen Java Dil Sunucusu (LSP)

Dosya değişikliğinde derleme ve test işlemlerini otomatik olarak çalıştır

Bazel gözlemci, kaynak dosyalar değiştiğinde Bazel hedefleri oluşturmak 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.