Bazel को IDE के साथ इंटिग्रेट करना

किसी समस्या की शिकायत करें सोर्स देखें Nightly · 8.0 · 7.4 · 7.3 · 7.2 · 7.1 · 7.0 · 6.5

इस पेज पर, IntelliJ, Android Studio, और CLion जैसे आईडीई के साथ Bazel को इंटिग्रेट करने का तरीका बताया गया है. इसके अलावा, अपना आईडीई प्लग इन बनाने का तरीका भी बताया गया है. इसमें इंस्टॉलेशन और प्लग इन की जानकारी वाले लिंक भी शामिल हैं.

आईडीई, Bazel के साथ कई तरह से इंटिग्रेट होते हैं. इनमें, आईडीई में Bazel को चलाने की सुविधाओं से लेकर, Bazel के स्ट्रक्चर के बारे में जानकारी शामिल है. जैसे, BUILD फ़ाइलों के सिंटैक्स को हाइलाइट करना.

अगर आपको Bazel के लिए कोई एडिटर या IDE प्लग इन बनाना है, तो कृपया Bazel Slack पर #ide चैनल में शामिल हों या bazel-dev मेलिंग सूची पर ईमेल करें.

आईडीई और एडिटर

IntelliJ, Android Studio, और CLion

IntelliJ, Android Studio, और CLion के लिए आधिकारिक प्लग इन. यह प्लग इन ओपन सोर्स है.

यह Google में अंदरूनी तौर पर इस्तेमाल किए जाने वाले प्लग इन का ओपन सोर्स वर्शन है.

विशेषताएं:

  • अलग-अलग भाषाओं के प्लग इन के साथ इंटरऑपरेट करना. इन भाषाओं में यह सुविधा इस्तेमाल की जा सकती है: Java, Scala, और Python.
  • Bazel टारगेट की सेमेटिक जानकारी के साथ, BUILD फ़ाइलों को IDE में इंपोर्ट करें.
  • अपने आईडीई को Starlark के बारे में बताएं. यह भाषा, Bazel की BUILD और .bzlफ़ाइलों के लिए इस्तेमाल की जाती है
  • सीधे आईडीई से बाइनरी बनाना, टेस्ट करना, और उन्हें चलाना
  • बाइनरी को डीबग करने और चलाने के लिए कॉन्फ़िगरेशन बनाएं.

इंस्टॉल करने के लिए, IDE के प्लगिन ब्राउज़र पर जाएं और Bazel खोजें.

पुराने वर्शन को मैन्युअल तरीके से इंस्टॉल करने के लिए, JetBrains के प्लग इन रिपॉज़िटरी से ZIP फ़ाइलें डाउनलोड करें. इसके बाद, IDE के प्लग इन ब्राउज़र से ZIP फ़ाइल इंस्टॉल करें:

Xcode

Tulsi और XCHammer, Bazel BUILD फ़ाइलों से Xcode प्रोजेक्ट जनरेट करते हैं.

Visual Studio Code

VS Code के लिए आधिकारिक प्लगिन.

विशेषताएं:

  • Bazel Build Targets tree
  • बिल्ड के दौरान .bzl फ़ाइलों के लिए Starlark डीबगर (ब्रेकपॉइंट सेट करना, कोड को सिलसिलेवार तरीके से देखना, वैरिएबल की जांच करना वगैरह)

Visual Studio के मार्केटप्लेस पर प्लग इन ढूंढें. यह प्लग इन ओपन सोर्स है.

यह भी देखें: सोर्स कोड के लिए ऑटोकंप्लीट की सुविधा

ऐटम

Atom पैकेज मैनेजर पर, language-bazel पैकेज ढूंढें.

Vim

GitHub पर bazelbuild/vim-bazel देखें

Emacs

GitHub पर bazelbuild/bazel-emacs-mode देखें

Visual Studio

Lavender, Visual Studio प्रोजेक्ट जनरेट करने के लिए एक एक्सपेरिमेंटल प्रोजेक्ट है. ये प्रोजेक्ट, बिल्ड करने के लिए Bazel का इस्तेमाल करते हैं.

इक्लिप्स

Bazel Eclipse की सुविधा, Eclipse प्रोजेक्ट के तौर पर Eclipse वर्कस्पेस में Bazel पैकेज इंपोर्ट करने के लिए, प्लग इन का एक सेट है.

सोर्स कोड के लिए अपने-आप पूरा होने की सुविधा

C भाषा परिवार (C++, C, Objective-C, और Objective-C++)

hedronvision/bazel-compile-commands-extractor, एक्सटेंसिबल एडिटर की कई तरह की सुविधाओं में, अपने-आप पूरा होने की सुविधा चालू करता है. इनमें VSCode, Vim, Emacs, और Sublime शामिल हैं. इससे clangd और ccls जैसे लैंग्वेज सर्वर और अन्य तरह के टूल, Bazel की इस समझ का इस्तेमाल कर पाते हैं कि cc और objc कोड को कैसे कंपाइल किया जाएगा. साथ ही, यह भी समझ पाते हैं कि अन्य प्लैटफ़ॉर्म के लिए क्रॉस-कंपाइलेशन को कैसे कॉन्फ़िगर किया जाता है.

Java

georgewfraser/java-language-server - Bazel से बनाए गए प्रोजेक्ट के लिए, Java Language Server (LSP)

फ़ाइल में बदलाव होने पर, बिल्ड और टेस्ट अपने-आप चलना

Bazel वॉचर, सोर्स फ़ाइलों में बदलाव होने पर Bazel टारगेट बनाने के लिए इस्तेमाल किया जाने वाला टूल है.

अपना IDE प्लगिन बनाना

IDE प्लग इन बनाते समय इस्तेमाल किए जाने वाले Bazel API के बारे में ज़्यादा जानने के लिए, IDE सहायता ब्लॉग पोस्ट पढ़ें.