मैं यह पता लगाने की कोशिश कर रहा हूं कि कितने (लगभग 50+) maven2 परियोजनाओं को व्यवस्थित करना है, ताकि वे केंद्रीय नेक्सस भंडार में तैनात हो सकें। पर इस ब्लॉक को रोकने के लिएमैवेन के वितरण प्रबंधन संगठन को विस्तृत कैसे करें?
<distributionManagement>
<repository>
<id>nexus-site</id>
<url>http://central_nexus/server</url>
</repository>
</distributionManagement>
अब, मैं (उन 50 + की) हर एक pom.xml नहीं करना चाहती: mvn deploy
लक्ष्य का उपयोग कर, एक इस तरह distributionManagement टैग में लक्ष्य निर्दिष्ट करने की आवश्यकता है और फिर से। मेरा पहला हालांकि settings.xml
फ़ाइल होगा, लेकिन ऐसा लगता है कि इसे परिभाषित करने के लिए यह संभव नहीं है (डिज़ाइन द्वारा)। तो, पहला सवाल होगा, वह मामला क्यों है? यदि यह संभव होगा तो मैं इसे maven2 वितरण में settings.xml में निर्दिष्ट कर सकता हूं, जिसे सभी डेवलपर्स को वितरित किया जा सकता है।
मुझे मिला एकमात्र संभावित समाधान एक संगठन-व्यापी मास्टर-पोम प्रोजेक्ट बनाना था, जिसमें इन सेटिंग्स शामिल हैं, और अन्य सभी pom.xml इस मास्टर-पोम पर <parent>
टैग के माध्यम से निर्भर करते हैं। लेकिन इस बहु मॉड्यूल में एक तरह से अजीब लग बनाता है:
- master configuration POM (pm)
- Project 1 parent pom (p1 with module 1 and module 2 as modules)
- Project 1 module pom (with pm as parent)
- Project 2 module pom (with pm as parent)
आमतौर पर मैं सभी प्रलेखन कि मॉड्यूल poms माता पिता पोम, नहीं कुछ अलग एक का उपयोग करना चाहिए में पढ़ें। लेकिन विरासत बनाम एकत्रीकरण के बारे में मेवेन वेबसाइट पढ़ने के बाद यह लिखा गया है कि यह वास्तव में संभव है।
एक समस्या यह है मैंने पाया Maven साइट पीढ़ी है, जो
तो इस सेटअप के साथ समस्याओं (मॉड्यूल सही ढंग से जुड़ा हुआ नहीं होता है अगर वे कोई सीधा वापस संदर्भ है) है लगता है के साथ था, यह एक मान्य है दृष्टिकोण? समस्या के लिए कोई अन्य, अधिक स्पष्ट, सरल समाधान?
http://maven.apache.org/pom.html#Distribution_Management – OhadR
@ ओहडआर: वे केवल एक प्रोजेक्ट में इसे लिखना लिखते हैं। प्वाइंट यह है कि मैं इसे 500 गुना डुप्लिकेट नहीं करना चाहता था ... – mglauche
मैं देखता हूं। मुद्दा लेना। इसलिए जिसने उत्तर दिया, उसके पास प्रोजेक्ट के लिए मुख्य पोम हो सकता है, जिसमें 'distribMngmnt' होगा ... – OhadR