इस पेज पर, Bazel को IntelliJ, Android Studio, और CLion जैसे आईडीई के साथ इंटिग्रेट करने का तरीका बताया गया है. इसके अलावा, इसमें अपना आईडीई प्लगिन बनाने का तरीका भी बताया गया है. इसमें प्लगिन इंस्टॉल करने और उसकी जानकारी के लिंक भी शामिल हैं.
आईडीई, Bazel के साथ कई तरीकों से इंटिग्रेट होते हैं. इनमें, आईडीई से Bazel को चलाने की सुविधा से लेकर, BUILD फ़ाइलों के सिंटैक्स को हाइलाइट करने जैसी Bazel की संरचनाओं की जानकारी शामिल है.
अगर आपको Bazel के लिए कोई एडिटर या आईडीई प्लगिन बनाना है, तो कृपया
#ide चैनल से जुड़ें Bazel Slack या
GitHub पर चर्चा शुरू करें.
आईडीई और एडिटर
IntelliJ, Android Studio, और CLion
आधिकारिक प्लगिन IntelliJ, Android Studio, और CLion के लिए. यह प्लगिन, एक ओपन सोर्स प्लगिन है.
यह प्लगिन का ओपन सोर्स वर्शन है. इसका इस्तेमाल Google में इंटरनल तौर पर किया जाता है.
विशेषताएं:
- भाषा के हिसाब से प्लगिन के साथ इंटरऑप. Java, Scala, और Python जैसी भाषाएं इस्तेमाल की जा सकती हैं.
- Bazel टारगेट की सिमैंटिक जानकारी के साथ,
BUILDफ़ाइलों को आईडीई में इंपोर्ट करना. - अपने आईडीई को Starlark के बारे में जानकारी देना. यह भाषा, Bazel की
BUILDऔर.bzlफ़ाइलों के लिए इस्तेमाल की जाती है - बाइनरी को सीधे आईडीई से बनाना, टेस्ट करना, और चलाना
- बाइनरी को डीबग करने और चलाने के लिए कॉन्फ़िगरेशन बनाना.
इसे इंस्टॉल करने के लिए, आईडीई के प्लगिन ब्राउज़र पर जाएं और Bazel खोजें.
पुराने वर्शन को मैन्युअल तरीके से इंस्टॉल करने के लिए, JetBrains के प्लगिन रिपॉज़िटरी से zip फ़ाइलें डाउनलोड करें और आईडीई के प्लगिन ब्राउज़र से zip फ़ाइल इंस्टॉल करें:
Xcode
rules_xcodeproj,
Tulsi, और
XCHammer Bazel की BUILD फ़ाइलों से Xcode
प्रोजेक्ट जनरेट करते हैं.
Visual Studio Code
VS Code के लिए आधिकारिक प्लगिन.
विशेषताएं:
- Bazel Build Targets ट्री
- बिल्ड के दौरान
.bzlफ़ाइलों के लिए Starlark डीबगर (ब्रेकपॉइंट सेट करना, कोड के ज़रिए आगे बढ़ना, वैरिएबल की जांच करना वगैरह)
Visual Studio Marketplace या OpenVSX Marketplace पर प्लगिन ढूंढें. यह प्लगिन, एक ओपन सोर्स प्लगिन है.
यह भी देखें: सोर्स कोड के लिए, अपने-आप पूरा होने की सुविधा
ऐटम
ऐटम पैकेज मैनेजर पर language-bazel पैकेज
ढूंढें.
यह भी देखें: सोर्स कोड के लिए, अपने-आप पूरा होने की सुविधा
विम वर्शन
GitHub पर bazelbuild/vim-bazel देखें
यह भी देखें: सोर्स कोड के लिए, अपने-आप पूरा होने की सुविधा
Emacs
GitHub पर bazelbuild/bazel-emacs-mode देखें
यह भी देखें: सोर्स कोड के लिए, अपने-आप पूरा होने की सुविधा
Visual Studio
Lavender, Visual Studio प्रोजेक्ट जनरेट करने के लिए एक एक्सपेरिमेंटल प्रोजेक्ट है. इसमें बिल्ड करने के लिए Bazel का इस्तेमाल किया जाता है.
इक्लिप्स
Bazel Eclipse Feature प्लगिन का एक सेट है. इसका इस्तेमाल, Bazel पैकेज को Eclipse प्रोजेक्ट के तौर पर, Eclipse Workspace में इंपोर्ट करने के लिए किया जाता है.
सोर्स कोड के लिए, अपने-आप पूरा होने की सुविधा
C Language Family (C++, C, Objective-C, Objective-C++, और CUDA)
kiron1/bazel-compile-commands
, Bazel Workspace में bazel-compile-commands //... चलाकर, compile_commands.json फ़ाइल जनरेट करता है.
compile_commands.json फ़ाइल की मदद से, clang-tidy, clangd (LSP) जैसे टूल और अन्य आईडीई, अपने-आप पूरा होने की सुविधा, स्मार्ट नेविगेशन, तुरंत ठीक करने की सुविधा वगैरह उपलब्ध करा पाते हैं. यह टूल, C++ में लिखा गया है. साथ ही, यह कंपाइल कमांड निकालने के लिए, Bazel के Protobuf आउटपुट का इस्तेमाल करता है.
hedronvision/bazel-compile-commands-extractor की मदद से, VSCode, Vim, Emacs, Atom, और Sublime जैसे कई एक्सटेंसिबल एडिटर में, अपने-आप पूरा होने की सुविधा, स्मार्ट नेविगेशन, तुरंत ठीक करने की सुविधा वगैरह उपलब्ध कराई जा सकती है. इससे, clangd और ccls जैसे लैंग्वेज सर्वर और अन्य तरह के टूलिंग, इस बात की जानकारी हासिल कर पाते हैं कि cc और objc कोड को कैसे कंपाइल किया जाएगा. इसमें, अन्य प्लैटफ़ॉर्म के लिए क्रॉस-कंपाइलेशन को कॉन्फ़िगर करने का तरीका भी शामिल है.
Java
georgewfraser/java-language-server - Bazel से बने प्रोजेक्ट के साथ काम करने वाला Java Language Server (LSP)
फ़ाइल में बदलाव होने पर, बिल्ड और टेस्ट अपने-आप चलाने की सुविधा
Bazel watcher, सोर्स फ़ाइलों में बदलाव होने पर, Bazel टारगेट बनाने का एक टूल है.
अपना आईडीई प्लगिन बनाना
आईडीई प्लगिन बनाते समय इस्तेमाल किए जाने वाले Bazel के एपीआई के बारे में ज़्यादा जानने के लिए, आईडीई के साथ काम करने की सुविधा से जुड़ा ब्लॉग पोस्ट पढ़ें.