मैवेन 2.2.1 में एक बाल परियोजना में एक (पैरेंट) pom.xml
की निर्भरताओं का उत्तराधिकारी होना चाहता हूं; यानी परियोजना विरासत का उपयोग करें। ऐसा लगता है कि इस मामले में डिफ़ॉल्ट पैकेजिंग प्रकार को jar
से pom
में बदलना आवश्यक है।क्या प्रोजेक्ट एग्रीगेशन (मल्टीमॉड्यूल) का उपयोग नहीं करते समय पैकेजिंग प्रकार 'पोम' आवश्यक है?
हालांकि, the Maven2 documentation यह नहीं है कि पैकेजिंग प्रकार pom
प्रोजेक्ट एकत्रीकरण के लिए आवश्यक है, यानी मल्टीमुड्यूल प्रोजेक्ट जो सबमिड्यूल का उपयोग करते हैं, लेकिन परियोजना विरासत के लिए नहीं?
Project ID: example:example-child
Reason: Parent: example:example-parent:jar:1
of project: example:example-child has wrong packaging: jar.
Must be 'pom'. for project example:example-child
अन्य दूसरी ओर, निम्नलिखित प्रविष्टि के साथ:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>example</groupId>
<artifactId>example-parent</artifactId>
<version>1</version>
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>
</dependencies>
</project>
<project>
<parent>
<groupId>example</groupId>
<artifactId>example-parent</artifactId>
<version>1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>example</groupId>
<artifactId>example-child</artifactId>
</project>
लेकिन अगर आप ऊपर विन्यास के साथ Maven (जैसे mvn clean
) कहते हैं, आपको कोई त्रुटि मिलती
<project>
...
<packaging>pom</packaging>
...
</project>
माता-पिता pom.xml
में, किसी भी त्रुटि के बिना मेवेन को निष्पादित किया जा सकता है।
क्या मेवेन का यह व्यवहार सही है?