Bağımlılık grafiğini inceleme

Başarılı bir derlemenin tüm bağımlılıkları BUILD dosyasında açıkça belirtilir. Bazel bu ifadelerden yararlanarak projenin bağımlılık grafiğini oluşturur ve böylece doğru derlemelerle doğru veriler elde edilmesini sağlar.

Örnek projenin bağımlılıklarını görselleştirmek için aşağıdaki komutu Workspace kök dizininde çalıştırarak bağımlılık grafiğinin bir metin gösterimini oluşturabilirsiniz:

bazel query --notool_deps --noimplicit_deps "deps(//main:hello-world)" \
  --output graph

Yukarıdaki komut, Bazel'a //main:hello-world hedefi için tüm bağımlılıkları arama (ana makine ve dolaylı bağımlılıklar hariç) ve çıkışı bir grafik olarak biçimlendirmesini bildirir.

Ardından, metni GraphViz dosyasına yapıştırın.

Ubuntu'da, GraphViz ve xdot Dot Görüntüleyici'yi yükleyerek grafiği yerel olarak görüntüleyebilirsiniz:

sudo apt update && sudo apt install graphviz xdot

Ardından, yukarıdaki metin çıktısını xdot konumuna pingleyerek grafiği oluşturabilir ve görüntüleyebilirsiniz:

xdot <(bazel query --notool_deps --noimplicit_deps "deps(//main:hello-world)" \
  --output graph)

Gördüğünüz gibi, örnek projenin ilk aşamasında ek bir bağımlılık olmadan tek bir kaynak dosya oluşturan tek bir hedef vardır:

&quot;hello-world&quot; için bağımlılık grafiği

Şekil 1. hello-world için bağımlılık grafiği, tek bir kaynak dosyayla tek bir hedef görüntüler.

Çalışma alanınızı oluşturduktan, projenizi oluşturduktan ve bağımlılarını inceledikten sonra biraz karmaşıklık ekleyebilirsiniz.