टारगेट को रेफ़र करने के लिए लेबल का इस्तेमाल करें

समस्या की शिकायत करें सोर्स देखें Nightly · 8.4 · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

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 फ़ाइल में टारगेट का रेफ़रंस देते समय, // वर्कस्पेस के रूट आइडेंटिफ़ायर को भी छोड़ा जा सकता है. इसके लिए, सिर्फ़ :target-name का इस्तेमाल करें.