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

รายงานปัญหา ดูแหล่งที่มา Nightly · 8.4 · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

การสร้างที่สำเร็จจะมีข้อกำหนดทั้งหมดระบุไว้อย่างชัดเจนใน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)

ดังที่เห็นได้ว่า สเตจแรกของโปรเจ็กต์ตัวอย่างมีเป้าหมายเดียว ซึ่งสร้างไฟล์ต้นฉบับเดียวโดยไม่มีการขึ้นต่อกันเพิ่มเติม

กราฟการขึ้นต่อกันสำหรับ &quot;hello-world&quot;

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

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