Android Bazel बिल्ड सिस्टम पर जाता है

Google डेवलपर्स जो Android के विकास के पीछे हैं, दिया एक घोषणा के माध्यम से जानना कि परियोजना आगे बढ़ रही है Android खुला स्रोत (AOSP) Bazel बिल्ड सिस्टम का उपयोग करने के लिए वर्तमान Soong, निंजा और बनाओ संकलन प्रणाली के बजाय।

Android रिपॉजिटरी में Bazel सपोर्ट पहले ही जोड़ दिया गया हैलेकिन संक्रमण डिफ़ॉल्ट रूप से नए बिल्ड सिस्टम मेंई कई संस्करणों में फैल जाएगा जितना संभव हो सके प्रवास को आसान और पारदर्शी बनाने के लिए मंच।

2020 और 2021 में, कोई महत्वपूर्ण बदलाव की उम्मीद नहीं है प्लेटफ़ॉर्म निर्माण वर्कफ़्लो में, और मौजूदा निर्माण सिस्टम के लिए समर्थन बनाए रखा जाएगा।

क्रमिक प्रवास की अनुमति देने के लिए, कुछ परिवर्तन Android बिल्ड को आसान बनाने के लिए पहले से ही Bazel में शामिल हैं, जैसे कि निंजा-प्रारूप बिल्ड फ़ाइलों को पार्स करने और चलाने की क्षमता।

यह तर्क दिया जाता है कि Android प्लेटफ़ॉर्म के लिए, Bazel पर स्विच करने से बिल्ड प्रक्रिया को कॉन्फ़िगर करने का लचीलापन बढ़ जाएगा, यह निर्माण प्रगति और निर्भरता के कनेक्शन की आत्मनिरीक्षण / निगरानी में सुधार करेगा, दोहराने योग्य बिल्ड को लागू करेगा, जटिल बिल्ड स्क्रिप्ट को सरल करेगा, विभिन्न बिल्ड और टेस्ट हैंडलर के साथ एकीकरण में सुधार करेगा और बिल्ड टाइम को कम करेगा।

Bazel को प्रवासन AOSP को अनुमति देगा:

AOSP संकलन को कॉन्फ़िगर करने के लिए और अधिक लचीलापन प्रदान करें (सशर्त के लिए बेहतर समर्थन)
AOSP पर अधिक आत्मनिरीक्षण की अनुमति दें प्रगति और निर्भरता का निर्माण करें
सही और खेलने योग्य AOSP बिल्ड (वॉटरटाइट) सक्षम करें
एक कॉन्फ़िगरेशन तंत्र का परिचय दें जो AOSP बिल्ड की जटिलता को कम करेगा
निर्माण और परीक्षण गतिविधियों के आगे एकीकरण को सक्षम करें
महत्वपूर्ण निर्माण समय और सुधार का अनुभव करने के लिए इन सभी को मिलाएं
बाज़ल समुदाय के इस प्रवास के लाभ इस प्रकार हैं:

एंड्रॉइड प्लेटफ़ॉर्म बिल्ड का समर्थन करने के लिए बज़ेल में महत्वपूर्ण निवेश चल रहा है
बाज़ल के पारिस्थितिकी तंत्र और सामुदायिक विस्तार में शुरू में दसियों हजारों एंड्रॉइड प्लेटफ़ॉर्म डेवलपर्स और एंड्रॉइड फोन मूल उपकरण निर्माता (ओईएम) और चिप विक्रेता शामिल हैं।
Android ऐप्स बनाने के लिए Google का Bazel नियम खुला स्रोत होगा, जिसका उपयोग AOSP में किया जाएगा, और Google द्वारा Android / Bazel समुदाय के साथ साझेदारी में बनाए रखा जाएगा।
Android एप्लिकेशन बनाने के लिए बेहतर Bazel संगतता
एंड्रॉइड प्लेटफॉर्म (रस्ट, जावा, पायथन, गो, आदि) के निर्माण के लिए उपयोग की जाने वाली अन्य भाषाओं के लिए बेहतर नियम समर्थन।
Bazel दीर्घकालिक समर्थन (LTS) संस्करणों के लिए मजबूत समर्थन, विस्तारित Bazel समुदाय को लाभ
बेहतर प्रलेखन (ट्यूटोरियल और संदर्भ)

का पारिस्थितिकी तंत्र Android पर Bazel शामिल प्रतिभागियों की संख्या का विस्तार करेगा विकास में, Android एप्लिकेशन बनाने के लिए एप्लिकेशन को सरल करेगा (जिसमें Google अपने एंड्रॉइड एप्लिकेशन के लिए स्क्रिप्ट बनाने के लिए कोड खोलने का इरादा रखता है), यह एंड्रॉइड (रस्ट, जावा, पायथन, गो) में उपयोग की जाने वाली विभिन्न प्रोग्रामिंग भाषाओं के लिए समर्थन में सुधार करेगा, यह लंबे संस्करण की अवधि बनाने के लिए संसाधन प्रदान करेगा और बेहतर और अधिक व्यापक प्रलेखन को बढ़ावा मिलेगा।

Bazel Google इंजीनियरों द्वारा विकसित किया गया है और इसका उपयोग कंपनी की अधिकांश आंतरिक परियोजनाओं के निर्माण के लिए किया जाता है। परियोजना अपनी उच्च निर्माण गति के लिए बाहर खड़ा है, जिसके लिए कैशिंग तकनीकों और निर्माण प्रक्रिया के समानांतर उपयोग किया जाता है।

उपकरण भी दोहराने योग्य विधानसभा सुनिश्चित करेंदूसरे शब्दों में, डेवलपर की मशीन पर प्रोजेक्ट के निर्माण का परिणाम ठीक उसी तरह होगा जैसे थर्ड-पार्टी सिस्टम, जैसे कि इंटीग्रेटेड इंटीग्रेशन सर्वर। एक्सटेंशन को जोड़ने के लिए तंत्र के माध्यम से अतिरिक्त कार्यक्षमता लागू की जाती है।

मेक और निंजा के विपरीत, बज़ेल एक उच्च-स्तरीय दृष्टिकोण लेता है संकलन नियम बनाने के लिए, जो संकलित की जा रही फाइलों के लिए कमांड बाइंडिंग को परिभाषित करने के बजाय, अधिक सार पूर्व-निर्मित ब्लॉकों का उपयोग करें और लक्ष्य / बिल्ड प्लेटफ़ॉर्म को परिभाषित करें।

परियोजना के घटक BUILD पाठ फ़ाइल में वर्णित हैं पुस्तकालयों, निष्पादकों और परीक्षणों के एक पैकेज के रूप में, संकलक को कॉल करने के लिए व्यक्तिगत फ़ाइलों और आदेशों के स्तर पर विस्तार किए बिना।

BUILD फ़ाइलों में, सभी निर्भरताओं को पूरी तरह से परिभाषित किया जाना चाहिए, परिवर्तन करने के बाद घटकों के पुनर्निर्माण के निर्णय लिए जाते हैं (केवल संशोधित फ़ाइलों को फिर से बनाया जाता है) और निर्माण प्रक्रिया को समानांतर किया जाता है।

Fuente: https://developers.googleblog.com


अपनी टिप्पणी दर्ज करें

आपका ईमेल पता प्रकाशित नहीं किया जाएगा। आवश्यक फ़ील्ड के साथ चिह्नित कर रहे हैं *

*

*

  1. डेटा के लिए जिम्मेदार: एबी इंटरनेट नेटवर्क 2008 SL
  2. डेटा का उद्देश्य: नियंत्रण स्पैम, टिप्पणी प्रबंधन।
  3. वैधता: आपकी सहमति
  4. डेटा का संचार: डेटा को कानूनी बाध्यता को छोड़कर तीसरे पक्ष को संचार नहीं किया जाएगा।
  5. डेटा संग्रहण: ऑकेंटस नेटवर्क्स (EU) द्वारा होस्ट किया गया डेटाबेस
  6. अधिकार: किसी भी समय आप अपनी जानकारी को सीमित, पुनर्प्राप्त और हटा सकते हैं।