使用標籤參照目標

回報問題 查看原始碼 Nightly · 8.0 . 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 就是從工作區根目錄 (包含 WORKSPACE 檔案的目錄) 到包含 BUILD 檔案的目錄的路徑,而 target-name 就是您在 BUILD 檔案中命名的目標 (name 屬性)。如果目標是檔案目標,path/to/package 就是套件根目錄的路徑,而 target-name 則是目標檔案的名稱,包括相對於套件根目錄 (包含套件 BUILD 檔案的目錄) 的完整路徑。

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