दरअसल, मावेन किसी परियोजना की निर्भरता के रूप में घोषित युद्ध की सकर्मक निर्भरता को हल नहीं करता है। वहाँ वास्तव में उस के बारे में एक समस्या है, MNG-1991 , लेकिन यह Maven 2.x में हल नहीं होगा और मुझे यकीन नहीं है कि मुझे नहीं पता कि ओवरले इस समस्या को हल करने की अनुमति देते हैं या नहीं। सुझाए गए समाधान की मेरी समझ निर्भरताओं की नकल करने के लिए है, उदाहरण के लिए एक प्रकार की परियोजना में।
(संपादित करें: कुछ और खुदाई के बाद, मुझे इस धागे में कुछ दिलचस्प लगा जो मैं नीचे उद्धृत कर रहा हूं:
मैं पिछले महीने में एपफ्यूज परियोजना के विकास में मदद कर रहा हूं जहां हम मावेन युद्ध प्लगइन में युद्ध उपरिशायी सुविधा का भारी उपयोग करते हैं। यह वास्तव में एक विशेषता है!
युद्ध के ओवरले के साथ अधिकतम शक्ति प्राप्त करने के लिए मैंने वारपाथ प्लगइन विकसित किया है जो परियोजनाओं को युद्ध कलाकृतियों को पूरी तरह से निर्भरता के रूप में उपयोग करने की अनुमति देता है। संक्षेप में:
1) युद्ध निर्भरता कलाकृतियों में / WEB-INF / कक्षाएं निर्देशिका की सामग्री को सामान्य संकलन, आदि कार्यों के लिए प्रोजेक्ट के क्लासपाथ में शामिल किया जा सकता है।
2) युद्ध निर्भरता कलाकृतियों से सकरात्मक निर्भरता अन्य प्लगइन्स, जैसे संकलित और कान द्वारा उपयोग के लिए उपलब्ध हो जाती है - इसलिए स्कीनी युद्धों को बनाते समय सभी निर्भरताओं को शामिल करने के लिए अधिक नहीं है!
प्लगइन अब सक्रिय रूप से पिछले कुछ महीनों के लिए AppFuse परियोजना में उपयोग किया गया है, और मुझे लगता है कि यह एक बिंदु पर है जहां यह उपयोग करने योग्य और स्थिर दोनों है। युद्ध प्लगइन टीम युद्ध प्लगइन के अंदर warpath कार्यक्षमता सहित में रुचि होगी? यह इसे होस्ट करने के लिए सबसे प्राकृतिक जगह होगी।
इसलिए, मुझे इसके साथ कोई अनुभव नहीं है, लेकिन मावेन युद्धपथ प्लगइन वास्तव में अच्छा और सरल दिखता है और केंद्रीय रेपो में उपलब्ध है। इसका उपयोग करने के लिए, अपनी pom.xml
फ़ाइल में निम्न प्लगइन कॉन्फ़िगरेशन तत्व शामिल करें :
[...]
<build>
<plugins>
<plugin>
<groupId>org.appfuse</groupId>
<artifactId>maven-warpath-plugin</artifactId>
<version>1.0-SNAPSHOT</version>
<extensions>true</extensions>
<executions>
<execution>
<goals>
<goal>add-classes</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
[...]
और युद्धपथों को आप वर्गपाठ में शामिल करना चाहते हैं जो युद्धपथ प्रकार की निर्भरता के रूप में शामिल हैं :
[...]
<dependencies>
<dependency>
<groupId>org.appfuse</groupId>
<artifactId>appfuse-web</artifactId>
<version>2.0</version>
<type>war</type>
</dependency>
<dependency>
<groupId>org.appfuse</groupId>
<artifactId>appfuse-web</artifactId>
<version>2.0</version>
<type>warpath</type>
</dependency>
</dependencies>
[...]
युद्ध और युद्धपथ निर्भरता प्रकार दोनों की आवश्यकता होती है: युद्ध ओवरले करने के लिए युद्ध प्रकार का उपयोग मावेन युद्ध प्लगइन द्वारा किया जाता है, युद्धपथ प्रकार का उपयोग प्रोजेक्ट क्लासपाथ में शामिल करने के लिए कलाकृतियों की सही सूची निर्धारित करने के लिए किया जाता है।
मैं इसे आज़माऊँगा।)