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