使用標籤參照目標

回報問題 查看原始碼 Nightly · 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

BUILD 檔案和指令列中,Bazel 會使用標籤來參照目標,例如 //main:hello-world//lib:hello-time。語法如下:

//path/to/package:target-name

如果目標是規則目標,則 path/to/package 是從工作區根目錄 (包含 MODULE.bazel 檔案的目錄) 到包含 BUILD 檔案的目錄的路徑,而 target-name 則是您在 BUILD 檔案中為目標命名的名稱 (name 屬性)。如果目標是檔案目標,則 path/to/package 是套件的根目錄路徑,而 target-name 是目標檔案的名稱,包括其相對於套件根目錄的完整路徑 (包含套件的 BUILD 檔案的目錄)。

當您參照存放區根層級的目標時,套件路徑會是空白,只要使用 //:target-name 即可。在同一個 BUILD 檔案中參照目標時,您甚至可以略過 // 工作區根 ID,只使用 :target-name