2011-01-03 13 views
20

मैवेन के लिए नया हूं। क्या कोई मुझे बता सकता है कि इस आदेश के दौरान वास्तव में क्या होता है mvn -pl एबीसी -एम-एएमडी? क्या यह कोड संकलित करता है ??इस आदेश के दौरान वास्तव में क्या होता है: mvn -pl <प्रोजेक्ट सूची>

कारण मैंने पूछा है कि मैंने जानबूझकर एक अवैध फ़ाइल डाली है और जब मैं "mvn -pl एबीसी-एएम-डीएमडी" विकल्प चलाता हूं तो मुझे सफल परिणाम मिलते हैं और मैं उलझन में हूं कि मैवेन गलत फाइल के बारे में क्यों शिकायत नहीं कर रहा है? ?

लेकिन अगर मैं "mvn install" का उपयोग करता हूं तो यह त्रुटियों को कम करता है!

उत्तर

3

यदि आप mvn -pl कहते हैं, और कोई तर्क नहीं देते हैं, तो आप पूरी तरह से कुछ भी करने के लिए मेवेन से पूछ रहे हैं।

-pl मानता है कि आप एक से अधिक मॉड्यूल वाले प्रोजेक्ट में बैठे हैं, और एक सबसेट बनाना चाहते हैं। आपने अभी नल सबसेट के लिए कहा है।

+0

असल में मैं इस पूर्ण कमांड का उपयोग कर रहा हूं mvn -pl एबीसी: Xyz -am -amd। प्रोजेक्ट एबीसी: XYZ में उसमें एक अमान्य फ़ाइल है और जब मैं इसे चलाता हूं तो मैवेन संकलित नहीं होता है। –

+0

mvn -X आम तौर पर मदद करता है। – bmargulies

24

-pl या --projects आप परियोजनाओं की एक विशिष्ट सेट का चयन करने के अपने लक्ष्य को लागू करने के लिए अनुमति देता है, (clean install जैसे) इस तरह से बार जब आप एक बड़ा परियोजना पर एक पूर्ण निर्माण के लिए इंतज़ार कर खर्च करते हैं अगर आप सिर्फ एक जोड़े का निर्माण करने की आवश्यकता होगी बचत मॉड्यूल।

आप इसे Maven reference पर देख सकते हैं।

सम्मान।

+0

धन्यवाद झुर्टाडो, असल में मैं इस पूर्ण कमांड का उपयोग कर रहा हूं mvn -pl एबीसी: Xyz -am -amd। प्रोजेक्ट एबीसी: XYZ में उसमें एक अमान्य फ़ाइल है और मैवेन –

-4

आपने वास्तव में इसे चलाने का लक्ष्य नहीं दिया है। mvn -pl Abc:Xyz -am -amd इसके साथ दो समस्याएं हैं।
सबसे पहले, -amd का अर्थ -am है, इसलिए आपको दोनों की आवश्यकता नहीं है।
दूसरा, आपने इसे चलाने का लक्ष्य नहीं दिया है, जैसे इंस्टॉल, पैकेज, टेस्ट, या संकलित करें।

+4

'-amd का अनुपालन नहीं करता है - इसलिए, आपको दोनों की आवश्यकता नहीं है' - मुझे नहीं लगता कि यह सही है। http://docs.codehaus.org/display/MAVEN/Make+Like+Reactor+Mode एक उदाहरण देता है जिसमें दोनों का उपयोग किया जाता है। इसके अलावा, '-am' ट्रिगर्स मेरे सिस्टम पर बनाता है जो' -एमडी' नहीं करता है। इसके लिए बहुत नया लेकिन एआईयूआई '-एम' परियोजनाओं का निर्माण करता है जो आपकी परियोजना पर निर्भर करता है, '-एमडी' परियोजनाओं का निर्माण करता है जो परियोजनाएं आपकी परियोजना पर निर्भर करती हैं, (!) – funkybro

+0

@funkybro सहमत – Curt

+0

'-am' की तरह है '-amd' के विपरीत: ईजी जब mvn -pl abc '-am' का उपयोग करते समय भी सभी मॉड्यूल बनाता है जो एबीसी '-amd' पर निर्भर करता है जो सभी मॉड्यूल भी बनाता है जो एबीसी पर निर्भर करता है – Kutzi

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