पोम फ़ाइल का सामान्य दृश्य

परियोजना की संरचना pom.xml फ़ाइल में वर्णित है, जो परियोजना के मूल फ़ोल्डर में स्थित होनी चाहिए। प्रोजेक्ट फ़ाइल की सामग्री इस तरह दिखती है:

<प्रोजेक्ट>
        <!—वर्तमान प्रोजेक्ट का विवरण -->
        <groupId>...</groupId>
        <artifactId>...</artifactId>
        <packaging>...</packaging>
        <version>... </ version>


        <properties>
            <!-- Properties section -->
        </properties>

        <repositories>
            <!-- Repositories section -->
        </repositories>


        <dependencies>
            <!-- Dependencies section -->
        </ निर्भरता>

        <बिल्ड>
            <!--बिल्ड सेक्शन --> <
        /बिल्ड>
</प्रोजेक्ट>

Pom.xml विवरण में सभी अनुभाग मौजूद नहीं हो सकते हैं। इसलिए गुण और रिपॉजिटरी अनुभागों का अक्सर उपयोग नहीं किया जाता है। वर्तमान परियोजना के विवरण पैरामीटर आवश्यक हैं । अब हम अंतिम खंड के बारे में बात करेंगे।

निर्माण खंड

बिल्ड सेक्शन वैकल्पिक है - मावेन इसके बिना प्रोजेक्ट बना सकता है। लेकिन अगर आप कम या ज्यादा जटिल प्रोजेक्ट की असेंबली सेट करना चाहते हैं, तो यह समझना कि वहां सब कुछ कैसे काम करता है, काम आएगा।

आइए एक साधारण उदाहरण देखें:

  <build>
        < finalName> projectName </ finalName>
        <sourceDirectory>${basedir}/src/java</sourceDirectory>
        <outputDirectory>${basedir}/targetDir</outputDirectory>
        <resources>
                <resource>
                <directory>${




Basedir}/         src                 / java/resources</directory>                 < शामिल                 > <शामिल                 >                     **/*
        .
. .
        </प्लगइन्स>
    </बिल्ड>

इस खंड में निर्माण के बारे में बुनियादी जानकारी है: जावा फाइलें कहाँ स्थित हैं, संसाधन फ़ाइलें, कौन से प्लगइन्स का उपयोग किया जाता है, निर्मित परियोजना को कहाँ रखा जाए।

चार मुख्य टैग हैं:

  • <अंतिम नाम>
  • <स्रोतनिर्देशिका>
  • <आउटपुट निर्देशिका>
  • <संसाधन>

आइए संक्षेप में उनके उद्देश्य का विश्लेषण करें:

<FinalName> टैग परिणामी बिल्ड फ़ाइल (जार, युद्ध, कान ..) का नाम निर्दिष्ट करता है जो पैकेज चरण में बनाया गया है । यदि पैरामीटर निर्दिष्ट नहीं है, तो डिफ़ॉल्ट मान, विरूपण साक्ष्य-संस्करण का उपयोग किया जाता है ।

<sourceDirectory> टैग आपको स्रोत फ़ाइलों के स्थान को फिर से परिभाषित करने की अनुमति देता है। डिफ़ॉल्ट रूप से, फ़ाइलें ${basedir}/src/main/java निर्देशिका में स्थित होती हैं , लेकिन आप कोई अन्य स्थान निर्दिष्ट कर सकते हैं।

<outputDirectory> टैग उस निर्देशिका को निर्दिष्ट करता है जहां संकलक संकलन परिणामों - * .class फ़ाइलों को सहेजेगा। डिफ़ॉल्ट मान लक्ष्य/वर्ग है

<संसाधन> टैग और इसके नेस्टेड <संसाधन> टैग संसाधन फ़ाइलों के स्थान को परिभाषित करते हैं। निर्माण करते समय संसाधन फ़ाइलों को केवल आउटपुट डायरेक्टरी निर्देशिका में कॉपी किया जाता है । संसाधन निर्देशिका का डिफ़ॉल्ट मान src/main/resource है ।

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