Groovy और Gradle: JVM स्वचालन और बिल्ड इंजीनियरिंग · पाठ

JAR, WAR और EAR की पैकेजिंग

Gradle के अंतर्निहित प्लगइन का उपयोग करके विभिन्न प्रकार के परिनियोजनीय आर्टिफैक्ट (JAR, WAR, EAR) बनाएँ।

पाठ 1, कुल 4 में से12 चरण

JAR, WAR और EAR की पैकेजिंग, CoddyKit पर Groovy और Gradle: JVM स्वचालन और बिल्ड इंजीनियरिंग का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Groovy और Gradle: JVM स्वचालन और बिल्ड इंजीनियरिंग सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Groovy और Gradle: JVM स्वचालन और बिल्ड इंजीनियरिंग पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

परिनियोजन के लिए पैकेजिंग

जब आप कोई अनुप्रयोग बनाते हैं, तो उसे वितरण और परिनियोजन के लिए पैकेज करने का तरीका आवश्यक होता है। यहीं परिनियोज्य आर्टिफैक्ट उपयोगी होते हैं!

ये JAR, WAR और EAR जैसे मानकीकृत पैकेज होते हैं, जिनमें आपके अनुप्रयोग का कोड, संसाधन और निर्भरताएँ एक साथ होती हैं। Gradle इन्हें कुशलता से बनाने के लिए शक्तिशाली, अंतर्निहित प्लगइन उपलब्ध कराता है।

Java आर्काइव (JAR)

सबसे सामान्य आर्टिफैक्ट JAR (Java Archive) है। यह कई Java class फ़ाइलों, संबंधित मेटाडेटा और संसाधनों को एकल फ़ाइल में पैकेज करने का मानक प्रारूप है।

JAR का सामान्यतः इन कार्यों के लिए उपयोग किया जाता है:

  • Java लाइब्रेरी
  • डेस्कटॉप अनुप्रयोग
  • कमांड-लाइन उपकरण

Gradle का अंतर्निहित java प्लगइन आपके प्रोजेक्ट को JAR फ़ाइल बनाने के लिए अपने-आप कॉन्फ़िगर करता है।

मूल JAR बनाना

मूल JAR बनाने के लिए अपने build.gradle फ़ाइल में java प्लगइन लागू करें। Gradle आपके स्रोत कोड को (आमतौर पर src/main/java में) अपने-आप ढूँढकर JAR बनाएगा।

यहाँ एक न्यूनतम build.gradle है:

plugins {
    id 'java'
}

group 'com.coddykit'
version '1.0-SNAPSHOT'

repositories {
    mavenCentral()
}

JAR को निष्पादन योग्य बनाना

कमांड-लाइन अनुप्रयोगों के लिए आप अक्सर निष्पादन योग्य JAR चाहते हैं। इसका अर्थ है कि आप इसे java -jar your-app.jar का उपयोग करके सीधे अपने टर्मिनल से चला सकते हैं।

ऐसा करने के लिए आपको JAR की मेनिफ़ेस्ट फ़ाइल को इस तरह कॉन्फ़िगर करना होगा कि वह बताए कि आपके अनुप्रयोग की main विधि किस class में है। आमतौर पर आप सभी प्रोजेक्ट निर्भरताओं को भी इस JAR में शामिल करते हैं।

निष्पादन योग्य JAR बनाना

आइए एक सरल Java class बनाएँ, जिसे हम निष्पादन योग्य JAR में पैकेज करेंगे। इस class में main विधि होगी।

इसे src/main/java/com/coddykit/app/Greeter.java में रखें:

package com.coddykit.app;

public class Greeter {
    public String getGreeting() {
        return "Hello from CoddyKit!";
    }

    public static void main(String[] args) {
        System.out.println(new Greeter().getGreeting());
    }
}

निष्पादन योग्य JAR का कॉन्फ़िगरेशन

अब पिछले Java कोड को निष्पादन योग्य JAR में बदलने के लिए build.gradle को कॉन्फ़िगर करें। हम मुख्य class निर्दिष्ट करेंगे और रनटाइम निर्भरताएँ शामिल करेंगे।

gradle jar चलाने के बाद आप इसे java -jar build/libs/your-project-name-version.jar से चला सकते हैं।

plugins {
    id 'java'
}

group 'com.coddykit'
version '1.0-SNAPSHOT'

repositories {
    mavenCentral()
}

jar {
    manifest {
        attributes 'Main-Class': 'com.coddykit.app.Greeter'
    }
    // This bundles all runtime dependencies into the JAR
    from {
        configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
    }
}

वेब अनुप्रयोग आर्काइव (WAR)

WAR (Web Application Archive) एक ऐसा पैकेज है, जिसे विशेष रूप से वेब अनुप्रयोगों के लिए बनाया गया है। इसमें वेब अनुप्रयोग के लिए आवश्यक सभी घटक होते हैं, जैसे:

  • सर्वलेट class
  • JSP फ़ाइलें
  • HTML पृष्ठ, CSS, JavaScript
  • कॉन्फ़िगरेशन फ़ाइलें (जैसे, web.xml)
  • निर्भर JAR

WAR को सामान्यतः सर्वलेट कंटेनर या अनुप्रयोग सर्वर (जैसे, Tomcat, Jetty) पर परिनियोजित किया जाता है।

`war` प्लगइन का उपयोग

WAR फ़ाइल बनाने के लिए Gradle का अंतर्निहित war प्लगइन लागू करें। यह प्लगइन अपने-आप java प्लगइन लागू करता है और मानक वेब अनुप्रयोग संरचना के अनुसार WAR फ़ाइलें बनाने के लिए कार्य जोड़ता है।

डिफ़ॉल्ट रूप से, वेब सामग्री (जैसे HTML, CSS, JS) को src/main/webapp में रखा जाना चाहिए।

plugins {
    id 'war' // This implicitly applies the 'java' plugin
}

group 'com.coddykit'
version '1.0-SNAPSHOT'

repositories {
    mavenCentral()
}

dependencies {
    // Example: add a servlet API dependency for compilation
    providedCompile 'javax.servlet:javax.servlet-api:4.0.1'
}

war {
    archiveFileName = "my-web-app.war"
    // You can customize the webAppDirectory if needed
    // webAppDirectory = file('src/main/webroot')
}

एंटरप्राइज़ आर्काइव (EAR)

EAR (Enterprise Application Archive) एक ऐसा पैकेज है, जिसका उपयोग कई JAR और WAR को एकल परिनियोज्य इकाई में समेटने के लिए किया जाता है। इसका उपयोग मुख्यतः बड़े Java EE (Enterprise Edition) अनुप्रयोगों के लिए किया जाता है, जिन्हें पूर्ण Java EE अनुप्रयोग सर्वरों (जैसे, WildFly, WebLogic) पर परिनियोजित किया जाता है।

EAR में ये शामिल हो सकते हैं:

  • एक या अधिक WAR मॉड्यूल (वेब अनुप्रयोग)
  • एक या अधिक EJB-JAR मॉड्यूल (Enterprise JavaBeans)
  • उपयोगिता JAR (सामान्य लाइब्रेरी)

`ear` प्लगइन का उपयोग

Gradle का ear प्लगइन आपको EAR फ़ाइलें बनाने की सुविधा देता है। आप घोषित करते हैं कि EAR में मॉड्यूल के रूप में कौन-से JAR और WAR शामिल किए जाने चाहिए। इसका उपयोग अक्सर बहु-प्रोजेक्ट निर्माणों में किया जाता है, जहाँ उप-प्रोजेक्ट अलग-अलग JAR और WAR बनाते हैं।

EAR में मॉड्यूल जोड़ने के लिए deploy कॉन्फ़िगरेशन का उपयोग किया जाता है।

plugins {
    id 'ear'
    id 'java' // For potential utility JARs within the EAR
    id 'war'  // For potential WARs within the EAR
}

group 'com.coddykit'
version '1.0-SNAPSHOT'

repositories {
    mavenCentral()
}

dependencies {
    // Example: Add a utility JAR and a WAR (e.g., from subprojects)
    // deploy project(':my-utility-jar')
    // deploy project(':my-web-app-war')

    // For this example, let's just make a dummy dependency
    deploy 'org.apache.commons:commons-lang3:3.12.0'
}

ear {
    archiveFileName = "my-enterprise-app.ear"
    // Optional: Customize application.xml (deployment descriptor)
    deploymentDescriptor {
        // applicationName = "MyEnterpriseApp"
    }
}

आर्टिफैक्ट प्रकार की जाँच

परिनियोज्य आर्टिफैक्ट के विभिन्न प्रकारों और उनके प्रमुख उपयोगों पर विचार करें।

पुनरावलोकन: आर्टिफैक्ट की पैकेजिंग

इस पाठ में हमने देखा कि Gradle आपके अनुप्रयोगों को मानक परिनियोज्य आर्टिफैक्ट में पैकेज करने में कैसे सहायता करता है:

  • JAR: लाइब्रेरी और स्वतंत्र Java अनुप्रयोगों के लिए, जिन्हें java प्लगइन से कॉन्फ़िगर किया जाता है। Main-Class परिभाषित करके इन्हें निष्पादन योग्य बनाया जा सकता है।
  • WAR: वेब अनुप्रयोगों के लिए, जिनमें war प्लगइन का उपयोग किया जाता है और जिन्हें सर्वलेट कंटेनरों पर परिनियोजित किया जाता है।
  • EAR: बड़े एंटरप्राइज़ अनुप्रयोगों में कई JAR और WAR को एक साथ पैकेज करने के लिए, जिसमें ear प्लगइन का उपयोग किया जाता है।

आपके Java अनुप्रयोगों के प्रभावी परिनियोजन और वितरण के लिए इन पैकेजिंग तकनीकों में दक्षता प्राप्त करना अत्यंत महत्वपूर्ण है।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Groovy सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
12
पाठ
48

अक्सर पूछे जाने वाले प्रश्न

क्या “JAR, WAR और EAR की पैकेजिंग” पाठ निःशुल्क है?

हाँ—“JAR, WAR और EAR की पैकेजिंग” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Groovy और Gradle: JVM स्वचालन और बिल्ड इंजीनियरिंग पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Groovy और Gradle: JVM स्वचालन और बिल्ड इंजीनियरिंग पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“JAR, WAR और EAR की पैकेजिंग” में मैं क्या सीखूँगा?

Gradle के अंतर्निहित प्लगइन का उपयोग करके विभिन्न प्रकार के परिनियोजनीय आर्टिफैक्ट (JAR, WAR, EAR) बनाएँ। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Groovy और Gradle: JVM स्वचालन और बिल्ड इंजीनियरिंग का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Groovy और Gradle: JVM स्वचालन और बिल्ड इंजीनियरिंग शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Groovy और Gradle: JVM स्वचालन और बिल्ड इंजीनियरिंग शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।

“JAR, WAR और EAR की पैकेजिंग” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Groovy और Gradle: JVM स्वचालन और बिल्ड इंजीनियरिंग पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Groovy और Gradle: JVM स्वचालन और बिल्ड इंजीनियरिंग पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. JAR, WAR और EAR की पैकेजिंग
  2. रिपॉज़िटरी में प्रकाशित करना
  3. CI/CD एकीकरण
  4. संस्करण निर्धारण और रिलीज़ स्वचालन
← Groovy और Gradle: JVM स्वचालन और बिल्ड इंजीनियरिंग पर वापस जाएँ