2015-03-29 5 views
81

मैं सिर्फ मैक ओएस एक्स पर Maven 3.3.1 स्थापित है, और ग्रहण के साथ एक Maven परियोजना के निर्माण के लिए मुझे इस त्रुटि दे रहा है:Maven 3.3.1 ग्रहण: -Dmaven.multiModuleProjectDirectory प्रणाली प्रॉपर्टी सेट नहीं है

-Dmaven.multiModuleProjectDirectory system property is not set. 
Check $M2_HOME environment variable and mvn script match. 

यह मेवेन 3.2.5 के साथ पहले नहीं हुआ था।

क्या इसे ठीक करने का कोई तरीका है (3.2.5 तक डाउनग्रेड करने के अलावा)?

ईक्लीप्स में मैं इस "बहु मॉड्यूलप्रोजेक्ट डायरेक्टरी" संपत्ति को कहां सेट कर सकता हूं?

+3

यह 2015-03-24 तक एक दायर एम 2 बग था, और तब से इसका समाधान हो चुका है। कृपया stackoverflow.com/a/29735560/751158 देखें। – ziesemer

उत्तर

171

Eclipse में आप इस तरह जाने की जरूरत है।

Window-> Preference -> Java -> Installed JREs -> Edit 

संपादित Default VM arguments आप

डाल करने के लिए आप पहले से ही Maven घर सेट करते हैं की जरूरत है।

-Dmaven.multiModuleProjectDirectory=$M2_HOME 
+1

धन्यवाद डिएगो! :) – Bob

+0

क्या आप समझेंगे कि यह क्यों जरूरी है? – atamanroman

+0

मुझे नहीं पता क्यों, लेकिन जब आप एक्लेप्से में साफ जैसे मैवेन विकल्प चलाते हैं तो यह दिखाएगा कि यह जरूरी है। –

6

JVM विकल्पों में इस तरह परिभाषित करें:

-Dmaven.multiModuleProjectDirectory=HOME_PATH_OF_YOU_PROJECT 
+1

एक्लिप्स में एक परियोजना के JVM विकल्प कहां से सेट कर सकते हैं? – Bob

+0

PROJECT_DIR M2_HOME से अधिक समझ में आता है। – atamanroman

+1

वह चर मौजूद नहीं है - जो आप वास्तव में संदर्भित करने का प्रयास कर रहे थे वह है $ PROJECT_LOC – specializt

2

जाने विन्यास को चलाने के लिए, नई maven build लांच विन्यास बनाने जहां पहले टैब में आप तो आधार निर्देशिका और लक्ष्य, भरने, jre tab के पास जाकर vm args को यह config जोड़ें:

-Dmaven.multiModuleProjectDirectory=%M2_HOME% 

जहां M2_HOME आपके मैवेन इंस्टॉलेशन

17

की मूल निर्देशिका को इंगित करने वाला एक पर्यावरण चर है जो इसे Ecl में m2e के साथ एक बग के रूप में दायर किया गया था मैवेन 3.3.1 में बदलावों के कारण https://bugs.eclipse.org/bugs/show_bug.cgi?id=462944 पर आईपीएसई।

यह 2015-04-13 के रूप में m2e 1.5.2 में तय किया गया है। यह एक उपलब्ध रिलीज है जिसे http://download.eclipse.org/technology/m2e/releases/ से स्थापित किया जा सकता है।

(कोई और अधिक बदल रहा है JVM पूरे कार्यक्षेत्र के लिए या विशिष्ट लांच विन्यास की आवश्यकता के लिए बहस।)

+1

मुझे मिलता है: 'स्थापित करने के लिए आइटम एकत्र करते समय एक त्रुटि हुई सत्र संदर्भ था: (प्रोफ़ाइल = epp.package.jee, चरण = org.eclipse.equinox.internal.p2.engine.phases.Collect, operand =, कार्रवाई =)। कोई भंडार नहीं मिला: osgi.bundle, org.aspectj.runtime.source, 1.7.0.20120703164200 कोई भंडार नहीं मिला: osgi.bundle, org.eclipse.contribution.weaving.jdt.source, 2.2.0.e37x-RELEASE -20120704-0900 '+ अन्य –

+0

नवीनतम 1.5.एक्स रिलीज यहां होना चाहिए: http://download.eclipse.org/technology/m2e/milestones/1.5/ – cyfur01

2

आप एक दूसरा तरीका की कोशिश करना चाहते हैं, तो आप http://download.eclipse.org/technology/m2e/milestones/1.5/ से एक रास्ता डाउनलोड करने के लिए कोशिश कर सकते हैं।

ओपन हेल्प> नया सॉफ्टवेयर स्थापित करें और उपरोक्त यूआरएल से डाउनलोड करें। इस तरह मेरी समस्या हल हो गई।

17

इंटेलीजे में आप कि आप अगले विन्यास को ध्यान में रखते पा सकते हैं वी एम विकल्प क्षेत्र में यह विकल्प सेट कर सकते हैं:

पसंद/निर्माण, क्रियान्वयन, तैनाती/उपकरण निर्माण/Maven/धावक

enter image description here

+0

यह मैवेन 3.3.9 के साथ इंटेलिजे आइडिया 14.0 के लिए भी काम करता है – Dreamcatcher

+0

इस मुद्दे पर 2 घंटे की तरह खो गया। धन्यवाद भाई, यह मेरे लिए समस्या तय की। – paulalexandru

2

मुझे मैवेन 3.3 और 3.2 संस्करणों के साथ एक ही समस्या का सामना करना पड़ा, इसलिए मैंने इसे संस्करण 3.0.5 में डाउनग्रेड करने का निर्णय लिया और यह ठीक काम करता था।

0

मुझे इंटेलिज 14 के साथ एक ही समस्या थी, मैंने मंचों पर उपलब्ध विभिन्न समाधानों की कोशिश की लेकिन काम नहीं किया। मैंने जो किया वह है मैं पूरी तरह से इंटेलिज को अनइंस्टॉल करता हूं और इंटेलिज 15.0.1 स्थापित करता हूं और उसी प्रोजेक्ट को आयात करता हूं तो सभी ठीक काम करता है।

1

यदि आपके पास अपनी कमांडलाइन पर यह त्रुटि संदेश है, तो कृपया सत्यापित करें कि क्या आपका PATH चर उसी Maven स्थापना apache-maven-3.X.X/bin फ़ोल्डर को आपके M2_HOME चर के रूप में इंगित करता है। मेरे मामले में मैं दो संस्करणों को मिला रहा था जिसके परिणामस्वरूप यह त्रुटि हुई।

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