ग्रैडल

ग्रैडल मल्टी-लैंग्वेज सॉफ्टवेयर विकास के लिए एक 'बिल्ड-ऑटोमेशन सॉफ़्टवेयर' है। यह कार्यान्वयन और पैकेजिंग से लेकर परीक्षण, परिनियोजन और प्रकाशन तक के फंक्शनों में विकास प्रक्रिया को नियंत्रित करता है। जिसके समर्थन में जावा, कोटलिन, ग्रूवी, स्काला, सी/सी++ और जावास्क्रिप्ट आदि लैंग्वेज सम्मिलित हैं। ग्रैडल अपाचे एंट और अपाचे मावेन सॉफ्टवेयर की अवधारणाओं पर आधारित है। अपाचे मावेन द्वारा उपयोग किए गए एक्सएमएल-आधारित कार्यान्वयन सॉफ्टवेयर के विपरीत एक ग्रूवी (प्रोग्रामिंग लैंग्वेज) और कोटलिन लैंग्वेज आधारित डोमेन-विशिष्ट लैंग्वेज प्रस्तुत करता है। निर्भरता प्रबंधन प्रदान करके फंक्शनों को किस क्रम में चलाया जा सकता है। यह निर्धारित करने के लिए ग्रैडल एक निर्देशित एसाइक्लिक ग्राफ़ का उपयोग करता है। यह प्रायः जावा वर्चुअल मशीन पर निष्पादित होता है।

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

ग्रैडल को अपाचे लाइसेंस 2.0 के अंतर्गत मुक्त सॉफ्टवेयर के रूप में वितरित किया गया था। इसे पहली बार 2008 में प्रारम्भ किया गया था।

नाम की उत्पत्ति
विकासक और सीईओ हंस डैक्टर ने कहा है कि वह मूल रूप से इस परियोजना का नाम "क्रैडल" रखना चाहते थे। हालाँकि नाम को विशिष्ट और अपेक्षाकृत "छोटा" बनाने के लिए उन्होंने ग्रूवी के उपयोग से "जी" लेते हुए "ग्रैडल" का चयन किया था।

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

यह प्लग-इन ग्रैडल का एक केंद्रीय फंक्शन हैं जो परियोजना कॉन्फ़िगरेशन और फंक्शनों के एक समूह के एकीकरण की स्वीकृति देता है। इसे एक केंद्रीय प्लग-इन जानकारी मे सम्मिलित किया जा सकता है या किसी एकल परियोजना के लिए कस्टम सॉफ्टवेयर को विकसित किया जा सकता है।

वितरण
ग्रैडल अलग से डाउनलोड के रूप में उपलब्ध होता है लेकिन इसे एंड्रॉइड स्टूडियो जैसे संस्करणों से भी डाउनलोड किया जा सकता है।

यह भी देखें

 * बिल्ड-ऑटोमेशन सॉफ़्टवेयर की सूची

बाहरी संबंध

 * Official Gradle Enterprise website
 * With Gradle founder Hans Dockter and Aleksandar Gargenta
 * With Gradle founder Hans Dockter and Aleksandar Gargenta