2012-04-19 16 views
7

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

मुझे अपनी आंतरिक परियोजनाओं के लिए वितरण प्रबंधन को कैसे निर्दिष्ट करना चाहिए? क्या मेरे पास आंतरिक परियोजनाओं के लिए एक अलग माता-पिता पोम समूह-आंतरिक होना चाहिए?

सोनाटाइप सीधे अपने भंडारों पर तैनात करने का एक तरीका बताता है, लेकिन वे अपने माता-पिता पोम (ओएसएस-पैरेंट) का उपयोग करने की सलाह देते हैं। Mvnrepository.org का उपयोग कर परियोजनाओं को देखते हुए, मुझे माता-पिता के रूप में ओएसएस-पैरेंट के साथ कोई भी परियोजना नहीं मिली। क्या अधिकांश परियोजना मैन्युअल रूप से सोनाटाइप को अपनी कलाकृतियों को तैनात करती है? वे पहले कहां और कैसे तैनात करते हैं?

इतने सारे प्रश्न! मुझे आश्चर्य है कि यह कितना जटिल है ...

अद्यतन: यह की पहचान की गई कुछ परियोजनाओं को ओएसएस-पैरेंट का उपयोग करता है। यह सिर्फ छुपा हुआ है क्योंकि यह माता-पिता का अभिभावक है। https://docs.sonatype.org/display/Repository/Sonatype+OSS+Maven+Repository+Usage+Guide ओएसएस माता-पिता अन्य के तहत विशेष परिस्थितियों भावना के तहत बनाता नहीं:

+1

पिछली बार मैंने इसके बारे में पढ़ा, मुझे विश्वास है कि आपको अपने जार को मेवेन सेंट्रल में लाने के लिए उनके साथ टिकट उठाना था। लेकिन आप सोनाटाइप ओएसएस भंडार के बारे में सही हैं, मुझे लगता है कि बशर्ते आप कुछ पूर्व शर्त प्राप्त कर सकें, जिससे वे आपको सीधे अपने रेपो में तैनात कर सकें। यदि आप सार्वजनिक डोमेन में कुछ लाइब्रेरी डाल रहे हैं, तो इसे आदर्श रूप से अपाचे 2 या समान लाइसेंस होना चाहिए। क्या आप अपना कोड दुनिया में खोलने के लिए तैयार हैं? यदि आप हैं, तो यह आपके कोड को गिटूब, सोर्सफोर्ज या Google कोड जैसे किसी स्थान पर होस्ट करने के लिए अच्छी तरह से समझ सकता है। –

+0

कोड दुनिया के लिए खुला है। अब मैं दुनिया में द्विआधारी उपलब्ध कराने की कोशिश कर रहा हूं। – schmmd

उत्तर

9

बार जब आप सभी स्थापित कर रहे हैं, तो आप staged releases और SNAPSHOTs सीधे Sonatype के ओएसएस भंडार करने के लिए तैनात कर सकते हैं। चरण रिलीज released through Sonatype's Nexus UI हो सकता है।

आपके आवेदन के लिए एक रिपोजिटरी फ़ोल्डर बनाने के लिए जिसे आप तैनात कर सकते हैं, आप open a ticket with Sonatype on their JIRA ओपन-सोर्स प्रोजेक्ट के संदर्भ के साथ-साथ आप तैनात करेंगे। प्रक्रिया बहुत चिकनी है और अगर आप सभी जरूरी सूचनाओं की आपूर्ति नहीं करते हैं तो सोनाटाइप आपकी मदद करेगा।

पहली चमक पर यह कई प्रोजेक्ट्स की तरह दिखता नहीं है कि माता-पिता के रूप में ओएसएस-पैरेंट होता है, वे अक्सर पीओएम पेड़ पर नेविगेट करते समय करते हैं। उदाहरण के लिए, Google Guava के माता-पिता guava-parent हैं, जिनमें माता-पिता oss-parent हैं। एक बार आपकी प्रोजेक्ट में oss-parent है और रिपॉजिटरी कॉन्फ़िगर किया गया है, तो आप आसानी से SNAPSHOTs को तैनात कर सकते हैं और mvn deploy या mvn release:prepare release:perform के साथ रिलीज़ कर सकते हैं।

यह भारी लग रहा है, लेकिन अगर आप पहली बार कदमों के माध्यम से हल करते हैं तो यह आसानी से समझा जाता है।

6

पहले मैं पढ़ने के लिए सलाह देते हैं निम्नलिखित है। यह निर्भर करता है कि आप किस प्रकार की परियोजना वितरित करना चाहते हैं।

अद्यतन: वह लिंक अब मर चुका है। सोनाटाइप को तैनात करने में सहायता के लिए here देखें।

अद्यतन: के लिए Maven केंद्रीय इस जाँच: http://central.sonatype.org/

+0

मैंने उस दस्तावेज़ को पढ़ा है। जब ओएसएस माता-पिता समझ में आता है और जब ऐसा नहीं होता है तो विस्तृत करने की देखभाल करें?ओएसएस माता-पिता के बिना परियोजनाएं कैसे मंत्रिमंडल में तैनात हैं? वे अपने pom.xml में कोई वितरण प्रबंधन के साथ आंतरिक रूप से कैसे तैनात करते हैं? – schmmd

+0

बस अपना खुद का वितरण प्रबंधन क्षेत्र बनाएं (http://search.maven.org/#artifactdetails|com.soebes.smpp|smpp|0.3|pom)। आप वितरण के बिना आंतरिक रूप से तैनात नहीं कर सकते हैं प्रबंधन ... सबसे अच्छा है कि आंतरिक रूप से रेपो मैनेजर भी हो ... यदि आपके पास ऐसी परियोजना है जो आंतरिक रूप से उपयोग की जाती है लेकिन इस परियोजना के मुकाबले मेवेन सेंटर में तैनात की जाएगी, तो इसका अपना वितरण आवश्यक है प्रबंधन क्षेत्र एक अलग माता-पिता का उपयोग करके सावधान रहें जो मेवेन सेंटर में चलेगा जो उन चीज़ों पर निर्भर होना चाहिए जो मेवेन सेंट्रल में नहीं हैं। – khmarbaise

+2

आपके द्वारा संदर्भित दस्तावेज़ जादुई रूप से गायब हो गया है, बिना किसी स्पष्ट उत्तराधिकारी के ऐसा लगता है। –

संबंधित मुद्दे