मावेन ट्यूटोरियल: आप शुरू करने के लिए जानना चाहते हैं



मावन ट्यूटोरियल का यह ब्लॉग आपकी परियोजनाओं के निर्माण के लिए मावेन के साथ शुरुआत करने के लिए आवश्यक सभी चीजों को शामिल करता है।

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

मावेन ट्यूटोरियल पर इस ब्लॉग में, हम निम्नलिखित विषयों को कवर करेंगे:

  1. हमें मावेन की आवश्यकता क्यों है?
  2. मावेन क्या है?
  3. मावेन वास्तुकला
  4. जीवन चक्र, चरण और लक्ष्य
  5. डेमो प्रोजेक्ट।

हमें मावेन की आवश्यकता क्यों है?

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





यहीं से मावेन तस्वीर में आता है। मावेन निर्भरता से संबंधित आपकी सभी समस्याओं को हल कर सकता है। आपको केवल निर्भरता और सॉफ़्टवेयर संस्करण को निर्दिष्ट करने की आवश्यकता है जिसे आप मावेन और मावेन में pom.xml फ़ाइल में चाहते हैं, बाकी की देखभाल करेंगे।तो अब हम यह समझने की कोशिश करें कि वास्तव में मावेन क्या है।

मावेन क्या है?

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



  • यह बताता है कि सॉफ्टवेयर कैसे बनाया जाता है
  • यह निर्भरता का वर्णन करता है।

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

प्रोजेक्ट ऑब्जेक्ट मॉडल (POM) फ़ाइल एक XML फ़ाइल है जिसमें प्रोजेक्ट से संबंधित जानकारी और कॉन्फ़िगरेशन जानकारी जैसे निर्भरता, स्रोत निर्देशिका, प्लगइन, लक्ष्य, आदि का उपयोग किया जाता है, जिसका उपयोग प्रोजेक्ट बनाने के लिए मावेन द्वारा किया जाता है। जब आप एक मावेन कमांड निष्पादित करते हैं, तो आप कमांड को निष्पादित करने के लिए पॉम फाइल देते हैं। मावेन अपने कॉन्फ़िगरेशन और संचालन को पूरा करने के लिए pom.xml फ़ाइल पढ़ता है।

मावेन उद्देश्य

मावेन उद्देश्य

किसी को मावेन का उपयोग कब करना चाहिए?

    1. यदि परियोजना के लिए बहुत अधिक निर्भरताएँ हैं।
    2. जब निर्भरता संस्करण अक्सर अपडेट होता है।
    3. मावेन का उपयोग करके निरंतर बिल्ड, एकीकरण और परीक्षण को आसानी से नियंत्रित किया जा सकता है।
    4. जब सोर्स कोड से डॉक्यूमेंट जनरेट करने के लिए किसी आसान तरीके की जरूरत होती है, तो सोर्स कोड को कंपेयर करते हुए, JAR फाइल्स या जिप फाइल में कंपाइल कोड को पैकेजिंग करना होता है।

मावेन वास्तुकला

जीवन चक्र, चरण और लक्ष्य

1. जीवन चक्र



एक विशिष्ट जीवन चक्र है जिसे मावेन लक्ष्य परियोजना को तैनात करने और वितरित करने के लिए अनुसरण करता है।

तीन अंतर्निहित जीवन चक्र हैं:

  • चूक - यह मावेन का मुख्य जीवन चक्र है क्योंकि यह परियोजना की तैनाती के लिए जिम्मेदार है।
  • स्वच्छ - इस जीवन चक्र का उपयोग परियोजना को साफ करने और पिछली बिल्ड द्वारा उत्पन्न सभी फ़ाइलों को हटाने के लिए किया जाता है।
  • साइट - इस जीवन चक्र का उद्देश्य परियोजना की साइट प्रलेखन बनाना है।

प्रत्येक जीवन चक्र चरणों के अनुक्रम से बना है। डिफ़ॉल्ट बिल्ड जीवन चक्र में 23 चरण होते हैं क्योंकि यह मावेन का मुख्य निर्माण जीवन चक्र है

दूसरी ओर, स्वच्छ जीवन चक्र में 3 चरण होते हैं, जबकि साइट जीवन चक्र 4 चरणों से बना होता है।

2. मवन चरण

एक मावेन चरण कुछ भी नहीं है लेकिन मावेन में एक चरण जीवन चक्र का निर्माण करता है। प्रत्येक चरण एक विशिष्ट कार्य को निष्पादित करता है।

यहाँ डिफ़ॉल्ट निर्माण जीवन चक्र में कुछ महत्वपूर्ण चरण हैं -

  • मान्य करना - यह चरण जाँचता है कि क्या बिल्ड के लिए आवश्यक सभी जानकारी उपलब्ध है
  • संकलन करें - यह चरण स्रोत कोड को संकलित करता है
  • परीक्षण-संकलन - यह चरण परीक्षण स्रोत कोड को संकलित करता है
  • परीक्षा - यह चरण इकाई परीक्षण चलाता है
  • पैकेज - इस चरण के पैकेजों ने वितरण कोड में स्रोत कोड (जार, युद्ध) संकलित किया
  • एकीकरण परीक्षण - यह चरण प्रक्रियाओं और पैकेज को तैनात करता है यदि एकीकरण परीक्षण चलाने के लिए आवश्यक हो
  • इंस्टॉल - यह चरण पैकेज को स्थानीय रिपॉजिटरी में स्थापित करता है
  • तैनात करना - यह चरण दूरस्थ रिपॉजिटरी के पैकेज को कॉपी करता है

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

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

3. मावन लक्ष्य

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

  • संकलक: संकलन - संकलन चरण
  • संकलक: परीक्षण - परीक्षण-संकलन चरण
  • अचूक: परीक्षण - परीक्षण चरण
  • स्थापित करें: स्थापित करें - चरण स्थापित करें
  • जार और युद्ध: युद्ध - पैकेज चरण

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

डेमो प्रोजेक्ट

के इस भाग में मावेन ट्यूटोरियल, हम एक डेमो परियोजना पर एक नज़र होगा। मावेन का उपयोग करके परियोजना का निर्माण करने के तरीके को प्रदर्शित करने के लिए, मैंने एक बनाया है ग्रहण आईडीई का उपयोग करके TestNG के साथ जावा परियोजना। यह एक बहुत ही सरल कार्यक्रम है जहाँ मैंने एक वेबसाइट के शीर्षक का परीक्षण करने के लिए कोड लिखा है।

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

तो इस प्रोजेक्ट के लिए आपको चाहिए , मावेन और ग्रहण आपके सिस्टम पर डाउनलोड किया गया। जो संस्करण मैं अपने सिस्टम पर उपयोग कर रहा हूं वे इस प्रकार हैं -

  1. ग्रहण - एंटरप्राइज़ संस्करण संस्करण 4.12.0 (2019-06)
  2. जावा - संस्करण 1.8.0_211
  3. मावेन - संस्करण 3.6.1
  • इसके अलावा, आपको ग्रहण के लिए TestNG प्लगइन डाउनलोड करने की आवश्यकता है और आप निम्न चरणों का उपयोग करके इसे डाउनलोड कर सकते हैं -
    • ग्रहण खोलें और मदद पर जाएं। मदद में एक्लिप्स मार्केटप्लेस पर क्लिक करें।
    • Find बॉक्स में TestNG टाइप करें और Go पर क्लिक करें। परिणामों में, आप 'ग्रहण के लिए टेस्टएनजी' देखेंगे। आपको इसे डाउनलोड करने की आवश्यकता है।
  • आपके द्वारा उपर्युक्त चीजों के साथ अपना सिस्टम सेट करने के बाद आप मावेन का उपयोग करके डेमो प्रोजेक्ट बनाने के लिए पूरी तरह तैयार हैं। इसलिए अब मैं आपको यह करने के लिए आवश्यक सभी कदम बताने जा रहा हूं।
    • ग्रहण में, फ़ाइल -> नया -> मावेन प्रोजेक्ट पर क्लिक करें।
    • Create a simple project पर क्लिक करें (archetype का चयन छोड़ें) और फिर next पर क्लिक करें।
  • अब आपको Group Id जैसे Group Id, Artifact Id इत्यादि के साथ एक विंडो दिखाई देगी।
    • समूह आईडी एक समूह का अद्वितीय आईडी है जो परियोजना का मालिक है।
    • अंतिम संकलित इकाई का नाम कलाकारी आईडी है।
    • वर्जन निर्मित कलाकृति का संस्करण है। SNAPSHOT कार्य प्रगति पर इंगित करता है।
    • पैकेजिंग आपके प्रोजेक्ट के आधार पर जार, युद्ध या पोम हो सकती है। हमारी परियोजना के लिए, हम जार का चयन करेंगे। फिर अपने प्रोजेक्ट का नाम दें।

  • एक बार जब आप प्रोजेक्ट बना लेते हैं, तब आप अपने मावेन प्रोजेक्ट की प्रोजेक्ट संरचना देखेंगे। यहाँ आप निम्न बातें देख सकते हैं -
    • pom.xml
    • src और लक्ष्य
    • src / main / java
    • src / परीक्षण / जावा
    • मावेन निर्भरता
  • अब src / main / test में एक क्लास फाइल बनाएं और इसे DemoClass नाम दें। इस वर्ग में सेलेनियम कोड होता है जिसे हम परीक्षण के लिए उपयोग कर रहे हैं। अब हमने Selenium, TestNG निर्भरता और Maven कंपाइलर और Surefire प्लगइन को pom.xml फ़ाइल में जोड़ा है। DemoClass और pom.xml का कोड नीचे दिया गया है:
पैकेज maven.selenium.testng import org.openqa.selenium.WebDriver import org.openqa.selenium.chrome.ChromeDriver इंपोर्ट org.testng.annot.est पब्लिक क्लास डेमोक्लास {@Test public void test () थ्रो इंटरप्रिटेशन एक्सेप्शन {।] घोषणा ऑब्जेक्ट्स / वेरिएबल्स की तात्कालिकता //System.setProperty('webdriver.gecko.driver','home/edureka/Downloads/geckodriver ') // वेबड्राइवर = नई FirefoxDriver () // उपरोक्त 2 पंक्तियों पर टिप्पणी करें और 2 के नीचे असहजता। Chrome System.setProperty ('webdriver.chrome.driver', 'C: UsersArvind PhulareDesktopchromedriver.exe') का उपयोग करने के लिए लाइनें) WebDriver ड्राइवर = नया ChromeDriver () स्ट्रिंग basUrl = 'http://newtours.demoaut.com/' स्ट्रिंग अपेक्षित 'वेलकम: मर्करी टूर्स' स्ट्रिंग वास्तविक टाइटल = '' // लॉन्च फायर लोमड़ी और इसे बेस URL driver.get (baseUrl) पर निर्देशित करें // वास्तविक शीर्षक मान का वास्तविक मान प्राप्त करें = driver.getTitle () Thread.sleep (3000) ) / * * पृष्ठ के वास्तविक शीर्षक की अपेक्षा के साथ करें और परिणाम को * 'पास' या 'असफल' के रूप में प्रिंट करें / if (realTitle.contentEquals (प्रत्याशित)) {System.out.println ('टेस्ट उत्तीर्ण!')} बाकी {System.out.println ('Test Fail')} // बंद फ़ायर लॉक्स Driver.close ()}}
4.0.0 maven.selenium maven.selenium.testng 0.0.1-SNAPSHOT EdurekaDemo 2.53.1 6.9.10 org.apache.maven.plugins maven-compiler-plugin 1.8 1.8 org.apache.maven.plugins maven-Surefire-plugin 2.18 .1 testng.xml org.seleniumhq.selenium सेलेनियम-जावा 3.141.59 org.testng testng 6.14.3 परीक्षण
  • प्रोजेक्ट चलाने से पहले हमें क्लास फाइल डेमोक्लास को टेस्टएनजी फाइल में बदलना होगा। ऐसा करने के लिए, DemoClass -> TestNG -> Convert toNNG पर राइट-क्लिक करें।

  • अब प्रोजेक्ट को चलाने के लिए, प्रोजेक्ट पर राइट क्लिक करें -> Run as -> Maven clean। यह पिछले सभी बिल्ड को हटाकर प्रोजेक्ट को साफ़ कर देगा।

  • मावेन को साफ करने के बाद, आपको परियोजना का परीक्षण करने की आवश्यकता है क्योंकि हमने वेब एप्लिकेशन के परीक्षण के लिए कोड लिखा है। तो प्रोजेक्ट पर राइट क्लिक करें -> रन के रूप में -> मावेन टेस्ट। यह वेबसाइट खोलेगा और वेबसाइट के शीर्षक से मेल खाएगा। अगर यह मेल खाता है तो हमारा टेस्ट केस पास हो जाएगा।

  • हम कमांड प्रॉम्प्ट का उपयोग करके उपरोक्त आदेशों को भी निष्पादित कर सकते हैं। उसके लिए, हमें pom.xml फ़ाइल के पथ की आवश्यकता है।

    गोटो c ++ का उपयोग कैसे करें
    • आप pom.xml फ़ाइल पर राइट क्लिक करके पथ प्राप्त कर सकते हैं -> गुण -> स्थान।
    • पथ की प्रतिलिपि बनाएँ, फिर एक कमांड प्रॉम्प्ट खोलें और इसे cd का उपयोग करके पेस्ट करें। सीडी सी: / उपयोगकर्ता / अरविंद फुलारे / ग्रहण-कार्यक्षेत्र / maven.selenium.testng।
    • एक बार जब आप ऐसा कर लेते हैं, तो आप फिर से मावेन कमांड टाइप कर सकते हैं जैसे कि mvan क्लीन और mvn टेस्ट

तो यह मैवेन ट्यूटोरियल पर इस ब्लॉग में मेरी तरफ से है। मुझे उम्मीद है कि आपने इस मावेन ट्यूटोरियल में जिन चीजों पर चर्चा की है, आप उन्हें समझ गए होंगे।

अब जब आप इस Maven ट्यूटोरियल को समझ गए हैं, तो इसे देखें 250,000 से अधिक संतुष्ट शिक्षार्थियों के एक नेटवर्क के साथ एक विश्वसनीय ऑनलाइन शिक्षण कंपनी, एडुरेका द्वारा, दुनिया भर में फैली हुई है। Edureka DevOps प्रमाणन प्रशिक्षण पाठ्यक्रम शिक्षार्थियों को यह समझने में मदद करता है कि DevOps क्या है और विभिन्न DevOps प्रक्रियाओं में विशेषज्ञता प्राप्त करता है और कठपुतली, जेनकींस, नगिओस, Ansible, शेफ, साल्टस्टैक और GIT जैसे विभिन्न चरणों को SDLC में स्वचालित करने के लिए।

क्या आप हमसे कोई प्रश्न पूछना चाहते हैं? कृपया इस मावेन ट्यूटोरियल के टिप्पणी अनुभाग में इसका उल्लेख करें और हम आपके पास वापस आ जाएंगे