ตรวจสอบกราฟทรัพยากร Dependency

รายงานปัญหา ดูแหล่งที่มา

บิลด์ที่สำเร็จมีทรัพยากร Dependency ทั้งหมดที่ระบุไว้อย่างชัดเจนในไฟล์ BUILD Bazel จะใช้ข้อความเหล่านั้นเพื่อสร้างกราฟทรัพยากร Dependency ของโปรเจ็กต์ ซึ่งช่วยให้มีบิลด์เพิ่มขึ้นที่แม่นยำ

หากต้องการแสดงภาพทรัพยากร Dependency ของโปรเจ็กต์ตัวอย่าง คุณจะสร้างการแสดงข้อความของกราฟทรัพยากร Dependency ได้โดยเรียกใช้คำสั่งนี้ที่รูทของพื้นที่ทำงาน

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

คำสั่งด้านบนจะบอกให้ Bazel ค้นหาทรัพยากร Dependency ทั้งหมดสำหรับเป้าหมาย //main:hello-world (ไม่รวมทรัพยากร Dependency ของโฮสต์และโดยนัย) และจัดรูปแบบเอาต์พุตเป็นกราฟ

จากนั้นวางข้อความใน 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 เพิ่มเติม

กราฟการขึ้นต่อกันสำหรับ &quot;สวัสดีโลก&quot;

รูปที่ 1 กราฟการขึ้นต่อกันของ hello-world แสดงเป้าหมายเดียวที่มีไฟล์แหล่งที่มาเดียว

หลังจากตั้งค่าพื้นที่ทำงานแล้ว ให้สร้างโปรเจ็กต์และตรวจสอบการขึ้นต่อกัน จากนั้นคุณอาจเพิ่มความซับซ้อนบางอย่างได้