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

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

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

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

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

IntelliJ, Android Studio, और CLion

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

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

विशेषताएं:

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

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

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

Xcode

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

Visual Studio Code

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

विशेषताएं:

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

Visual Studio Marketplace पर प्लगिन ढूंढें. यह प्लगिन, ओपन सोर्स है.

यह भी देखें: सोर्स कोड के लिए, अपने-आप पूरा होने की सुविधा

ऐटम

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

विम वर्शन

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

Emacs

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

Visual Studio

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

इक्लिप्स

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

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

C Language Family (C++, C, Objective-C, और Objective-C++)

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

Java

georgewfraser/java-language-server - Java Language Server (LSP), जो Bazel से बने प्रोजेक्ट के साथ काम करता है

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

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

अपना आईडीई प्लगिन बनाना

आईडीई प्लगिन बनाते समय इस्तेमाल किए जाने वाले Bazel के एपीआई के बारे में ज़्यादा जानने के लिए, आईडीई के साथ काम करने की सुविधा से जुड़ा ब्लॉग पोस्ट पढ़ें.