2011-11-19 7 views
40

मैं Maven करने के लिए नया हूँ और एक परिचय के रूप maven.apache.orgtutorial here का उपयोग कर रहा हूँ।कैसे एक परियोजना Maven-मूलरूप आदर्श-प्लगइन का उपयोग कर बनाने के लिए? ArtefactId आदि क्या है?

ट्यूटोरियल के "? कैसे मैं अपनी पहली Maven परियोजना करते हैं" अनुभाग में, यह हमें सिखाता है निम्न आदेश को क्रियान्वित करते हुए एक Maven मूलरूप आदर्श परियोजना उत्पन्न करने के लिए:

mvn archetype:generate 

बाद Maven कई डाउनलोड किया कलाकृतियों, यह अचानक बंद कर दिया और कमांड लाइन पर निम्नलिखित प्रश्न पूछा:

Choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): 149: 

अपाचे ट्यूटोरियल यह संकेत वर्णन नहीं है।

मैं दो प्रश्न हैं:

1. के लिए पूछ ऊपर प्रश्न क्या है? इसका उत्तर कैसे दिया जाना चाहिए कि mvn archetype:generate प्रक्रिया जारी है?

2. पारंपरिक, लोगों mvn archetype:generate का प्रयोग कर एक Maven प्रोजेक्ट बनाने के लिए करते हैं?

-------------- अद्यतन ---------------------

के संबंध में

मेरी पहला सवाल, मैंने किसी भी मूल्य को इनपुट किए बिना "एंटर" दबाया और निम्न आउटपुट प्राप्त किया:

Choose version: 
1: 1.0-alpha-1 
2: 1.0-alpha-2 
3: 1.0-alpha-3 
4: 1.0-alpha-4 
5: 1.0 
6: 1.1 
Choose a number: 6: 

वह क्या है?

मैं इनपुट "1" उपरोक्त मामले में, तो मैं निम्नलिखित बातें मिल गया:

Define value for property 'package': : : 
Define value for property 'groupId': : 
Define value for property 'artifactId': : 
... 

मैं उन्हें कैसे परिभाषित कर सकते हैं?

उत्तर

4

यह आप जो मूलरूप आदर्श आप अपने प्रोजेक्ट बीज के उपयोग करना चाहते हैं पूछ रहा है। यदि आप उस प्रॉम्प्ट पर "एंटर" दबाते हैं, तो यह आपको उपलब्ध विकल्पों की एक सूची देगा। आप केवल एक साधारण प्रोजेक्ट बनाने के लिए maven-archetype-quickstart का उपयोग कर सकते हैं (यह आपको इसके बाद एक रिपॉजिटरी चुनने के लिए संकेत दे सकता है, उस स्थिति में, केवल उस नंबर को दर्ज करें जो आपके द्वारा दर्ज किए जाने वाले सूचीबद्ध पहले रिपोजिटरी से मेल खाता है)।

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

+0

@ क्रिस, कृपया मेरी पोस्ट में अपना अपडेट देखें, मैं एंटर दबाता हूं, लेकिन अजीब आउटपुट मिला। वे क्या हैं? – Mellon

+0

वे आपके भंडार में उपलब्ध आर्केटाइप के संस्करण हैं। जब तक आपके पास अन्यथा कोई अनिवार्य कारण न हो, आपको केवल नवीनतम का उपयोग करना चाहिए (इसलिए इस मामले में, संस्करण 1.1) – Chris

+3

आप 'ineractiveMode = false' स्विच का उपयोग कर सभी संकेतों को बंद कर सकते हैं। 'एमवीएन आर्केटाइप का प्रयास करें: जेनरेट करें- डीग्रुपआईडी = com.mycompany -DartifactId = someProject -DinteractiveMode = false'। उम्मीद है की वो मदद करदे। –

39

mvn archetype:generate आदेश एक मौजूदा टेम्पलेट से कोई प्रोजेक्ट बनाने के लिए प्रयोग किया जाता है। कई डेवलपर्स और परियोजना समूहों द्वारा परिभाषित कई आर्केटाइप हैं। जब आप कमांड चलाते हैं, तो मैवेन निम्नलिखित चीजें करता है:

  1. डाउनलोड मैवेन-आर्केटाइप-प्लगइन का नवीनतम संस्करण।
  2. सूचियाँ सभी मूलरूप आदर्श के कि से एक प्रोजेक्ट बनाने के लिए इस्तेमाल किया जा सकता। यदि आप कमांड को कॉल करते समय एक आर्केटाइप परिभाषित करते हैं, तो मैवेन चरण 4 पर कूद जाता है।
  3. डिफ़ॉल्ट रूप से, Maven Maven-मूलरूप आदर्श-त्वरित प्रारंभ मूलरूप आदर्श जो मूल रूप से एक Maven नमस्ते विश्व स्रोत और परीक्षण वर्गों के साथ परियोजना बनाता है चुनता है। यदि आप एक साधारण प्रोजेक्ट बनाना चाहते हैं, तो आप जारी रखने के लिए केवल एंटर दबा सकते हैं। यदि आप एक विशिष्ट प्रकार का एप्लिकेशन बनाना चाहते हैं, तो आपको अपनी जरूरतों से मेल खाने वाले आर्केटाइप को ढूंढना चाहिए और उस आर्केटाइप की संख्या दर्ज करना चाहिए, फिर एंटर दबाएं। जैसे यदि आप एक वेबपैप प्रोजेक्ट बनाना चाहते हैं, तो आप 153 दर्ज कर सकते हैं (यह इस आर्केटाइप के लिए वर्तमान नंबर है, यह समय में बदल सकता है।)
  4. चूंकि आर्किटेप टेम्पलेट्स हैं और वे वर्तमान सर्वोत्तम प्रथाओं को प्रतिबिंबित करना चाहते हैं, वे विकसित हो सकते हैं समय, इस प्रकार उनके अपने संस्करण हैं। मेवेन आपको पूछेगा कि उस आर्केटाइप का कौन सा संस्करण आप उपयोग करना चाहते हैं। डिफ़ॉल्ट रूप से, मैवेन आपके लिए नवीनतम संस्करण चुनता है। इसलिए यदि आप किसी आर्केटाइप के नवीनतम संस्करण का उपयोग करने के लिए सहमत हैं, तो बस इस चरण में एंटर दबाएं;
  5. प्रत्येक मेवेन प्रोजेक्ट (और मॉड्यूल) में इसका समूह आईडी, आर्टिफैक्ट आईडी और संस्करण है। तब मैवेन आपको तीन चरणों में पूछेगा। समूह आईडी: यह आमतौर पर एक संगठन या एक परियोजना के बीच अद्वितीय है। artifactId: artifactId आमतौर पर वह नाम है जिसे परियोजना द्वारा जाना जाता है। संस्करण: यह नामकरण पहेली का अंतिम टुकड़ा है। (read more)
  6. अंत में, मैवेन आपको आपके कोड के लिए पैकेज संरचना पूछेगा। सबसे अच्छी प्रैक्टिस आपकी फ़ोल्डर संरचना को बनाना है जो समूह आईडी को प्रतिबिंबित करती है, इस प्रकार मैवेन इसे डिफ़ॉल्ट रूप से सेट करता है लेकिन आप इसे बदलने के लिए स्वतंत्र हैं।

इन जानकारी दर्ज करने के बाद, मैवेन आपको आपके द्वारा दर्ज की गई सारी जानकारी दिखाएगा और आपको परियोजना निर्माण की पुष्टि करने के लिए कहेंगे। यदि आप वाई दबाते हैं और फिर दर्ज करते हैं, तो वॉयला आपकी प्रोजेक्ट आपके द्वारा चुने गए आर्टिफैक्ट और सेटिंग्स के साथ बनाई गई है।

आप maven-archetype-plugin की उपयोग साइट भी पढ़ सकते हैं।

1

ट्यूटोरियल पर एक त्वरित रूप से पता चलता है कि आपने आर्केटाइप में कुछ पैरामीटर छोड़े हैं: कमांड उत्पन्न करें। यही कारण है कि यह नहीं जानता कि कौन सा आर्केटाइप आपके ट्यूटोरियल प्रोजेक्ट को जेनरेट करने के लिए चुनता है और सभी उपलब्ध आर्केटीप्स (14 9) प्रस्तुत करता है।

पहला प्रश्न: रिटर्न दबाकर आपने आर्केटाइप प्लगइन का सुझाव स्वीकार कर लिया और # 14 9 का चयन किया। यह आर्केटाइप अलग-अलग संस्करणों में सामान्य रूप से निकलता है और सामान्य रूप से क्रिस द्वारा बताए गए अनुसार यह नवीनतम - यहां 1.1 चुनना ठीक है।

दूसरा प्रश्न: चूंकि एक आर्केटाइप एक ऐसा टेम्पलेट है जो आपको बहुत से काम बचा सकता है: हाँ यह आम है। लेकिन एकमात्र रास्ता नहीं - आप हमेशा एक खाली परियोजना के साथ शुरू कर सकते हैं।

0

तुम भी संक्षिप्त रूप का उपयोग कर सकते

mvn archetype:generate -Dfilter=org.example.group:example-artifact 

या यहां तक ​​कि केवल एक समूह:

mvn archetype:generate -Dfilter=org.example.group: 

आप निम्न विरूपण साक्ष्य (पहले मामले में) मिल जाएगा, तो यह किसी भी कॉन्फ़िगर किया गया सूची में मौजूद है :

<groupId>org.example.group</groupId> 
<artifactId>example-artifact</artifactId> 

या यदि आप एक से अधिक उम्मीदवार हैं तो आपको कई सुझाव मिलेंगे। तो आपको choise सूची में प्रदर्शित इंडेक्स में प्रवेश करके उन्हें चुनना होगा।

अधिक के लिए मेवेन website से परामर्श लें!

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