บิลด์ที่ประสบความสำเร็จมีทรัพยากร Dependency ทั้งหมดที่ระบุไว้อย่างชัดเจนในไฟล์ BUILD
ส่วน Bazel จะใช้คำสั่งเหล่านั้นเพื่อสร้างกราฟการอ้างอิงของโปรเจ็กต์ ซึ่งช่วยให้สร้างบิลด์เพิ่มขึ้นได้อย่างแม่นยำ
หากต้องการแสดงภาพทรัพยากร Dependency ของโปรเจ็กต์ตัวอย่าง ให้สร้างการแสดงข้อความของกราฟการอ้างอิงโดยเรียกใช้คำสั่งนี้ที่รูทของพื้นที่ทำงาน
bazel query --notool_deps --noimplicit_deps "deps(//main:hello-world)" \
--output graph
คำสั่งด้านบนจะบอกให้ Bazel ค้นหาทรัพยากร Dependency ทั้งหมดสำหรับเป้าหมาย //main:hello-world
(ยกเว้นทรัพยากร Dependency ของโฮสต์และการอ้างอิงโดยนัย) และจัดรูปแบบเอาต์พุตเป็นกราฟ
จากนั้นวางข้อความลงใน GraphViz
ใน Ubuntu คุณสามารถดูกราฟในเครื่องได้โดยติดตั้ง GraphViz และ xdot Viewer:
sudo apt update && sudo apt install graphviz xdot
จากนั้นคุณจะสร้างและดูกราฟได้โดยการเชื่อมต่อเอาต์พุตข้อความด้านบนกับ xdot
xdot <(bazel query --notool_deps --noimplicit_deps "deps(//main:hello-world)" \
--output graph)
คุณจะเห็นว่าขั้นตอนแรกของโปรเจ็กต์ตัวอย่างมีเป้าหมายเดียวที่สร้างไฟล์ต้นฉบับไฟล์เดียวโดยไม่มีทรัพยากร Dependency เพิ่มเติม
รูปที่ 1 กราฟการขึ้นต่อกันสำหรับ hello-world
แสดงเป้าหมายเดียวที่มีไฟล์แหล่งที่มาเดียว
หลังจากตั้งค่าพื้นที่ทำงานแล้ว ให้สร้างโปรเจ็กต์ และตรวจสอบการขึ้นต่อกันของพื้นที่ทำงาน จากนั้นคุณอาจเพิ่มความซับซ้อนลงไปได้