Bu sayfada, Bazel'i IntelliJ, Android Studio ve CLion gibi IDE'lerle entegre etme (veya kendi IDE eklentinizi oluşturma) açıklanmaktadır. Ayrıca, yükleme ve eklenti ayrıntılarının bağlantılarını da içerir.
IDE'ler, Bazel'in IDE'den yürütülmesine olanak tanıyan özelliklerden BUILD
dosyalarının söz dizimi vurgulama gibi Bazel yapılarına ilişkin farkındalığa kadar çeşitli şekillerde Bazel ile entegre olur.
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 şirket içinde kullanılan eklentinin açık kaynaklı sürümüdür.
Özellikler:
- Dile özgü eklentilerle birlikte çalışabilme Desteklenen diller arasında Java, Scala ve Python yer alır.
- Bazel hedeflerinin semantiği hakkında bilgi sahibi olarak IDE'ye
BUILD
dosyalarını içe aktarın. - IDE'nizin, Bazel'in
BUILD
ve.bzl
dosyaları için kullanılan dil olan Starlark'ı tanımasını sağlayın. - Doğrudan IDE'den ikili dosyaları oluşturma, test etme ve yürütme
- İkili dosyaları hata ayıklama ve çalıştırma 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' Plugin Repository'den zip dosyalarını 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 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ısı (kesme noktaları ayarlama, kodda adım adım ilerleme, değişkenleri inceleme vb.)
Eklentiyi Visual Studio pazar yerinde 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'da bazelbuild/vim-bazel
bölümüne bakın.
Emacs
bazelbuild/bazel-emacs-mode
on
GitHub
Visual Studio
Lavender, derleme için Bazel'i kullanan Visual Studio projeleri oluşturmaya yönelik deneysel bir projedir.
Güneş/ay tutulması
Bazel Eclipse Feature, Bazel paketlerini Eclipse çalışma alanına Eclipse projeleri olarak 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 çok çeşitli genişletilebilir düzenleyicilerde otomatik tamamlamayı etkinleştirir. Bu sayede, clangd ve ccls gibi dil sunucularının yanı sıra diğer araç türleri, cc
ve objc
kodunun nasıl derleneceği konusunda Bazel'in anlayışından yararlanabilir. Buna, diğer platformlar için çapraz derlemeyi nasıl yapılandırdığı da dahildir.
Java
georgewfraser/java-language-server
- Bazel ile oluşturulan projeler için destek içeren 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 oluşturmaya yarayan 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.