2013-05-16 6 views
16

मैं कैसे मैवेन की .m2 निर्देशिका का स्थान बदल सकता हूं?मेवेन - वैकल्पिक। एम 2 निर्देशिका

Maven यह की सेटिंग, भंडार कैश, आदि के लिए ${user.home}/.m2 का उपयोग करता

मुझे पता है कि मैं कर सकते हैं:

  • भंडार कैश के लिए एक अलग निर्देशिका करने के लिए अपने वैश्विक में localRepository विशेषता बदलकर (बिंदु कॉन्फ़िगरेशन फ़ाइल), लेकिन किसी और चीज के लिए नहीं (settings.xml, उदाहरण के लिए)।
  • -s सीएलआई विकल्प का उपयोग करें, लेकिन हर बार जब मैं मैवेन का उपयोग करता हूं तो मुझे ऐसा करना होगा।

लेकिन आदर्श रूप में, मुझे वैश्विक समाधान चाहिए। सहजता से यह संभव होना चाहिए ..

मैं ऐसा करना चाहता हूं क्योंकि मेरी कंपनी मेरे $ {user.home} को एक साझा ड्राइव पर सेट करती है जो नेटवर्क समस्याओं से ग्रस्त है।

उत्तर

12

सबसे अच्छा विकल्प है अपने उपयोगकर्ता में .m2 बनाने के लिए। अपने मशीन पर स्थानीय फ़ोल्डर को इंगित करने के लिए मेवेन का उपयोग करने से पहले एक सिम्लिंक अपफ्रंट के रूप में।

अन्यथा आप mymvn (या m3 या जो भी) नामक एमवीएन के लिए एक खोल उपनाम बना सकते हैं जो-साथ-साथ स्थानीय रेपो स्थान में गुजरता है।

+0

हाँ मुझे लगता है कि यह सबसे अच्छा विकल्प है। Unf मैं एक सिम्लिंक नहीं बना सकता (विंडोज़ :() लेकिन उपनाम (बैच फ़ाइल के रूप में) समय के लिए काम करेगा। –

+0

[विंडोज़ पर प्रतीकात्मक लिंक बनाने के लिए सरल, आसान तरीका] (https: // superuser.com/questions/197273/straightforward- आसान-way-to-create-symbolic-links-on-windows) – Vadzim

29

अपने भंडार का स्थान सेट करने के लिए MAVEN_OPTS पर्यावरण चर का उपयोग करें। इसे अपने खोल स्टार्टअप में सेट करें, और आपको हर बार कमांड लाइन पर रखना नहीं है।

export MAVEN_OPTS="-Dmaven.repo.local=/path/to/repository" 

परिशिष्ट। मुझे माफ कर दो। आपने कहा था कि आप सेटिंग्स के साथ-साथ भंडार के लिए .m2 को बदलना चाहते हैं। आप M2_HOME पर्यावरण चर सेट करना चाहते हैं। यह documentation कहता है कि नियंत्रण जहां maven सेटिंग्स.xml की तलाश करता है। वहां से, आप रिपोजिटरी स्थान आदि को नियंत्रित कर सकते हैं।

+0

धन्यवाद dbrown, लेकिन M2_HOME जहां Maven तो वैश्विक सेटिंग्स स्थापित Maven के लिए लग रहा है, और है। –

-1

आप अपने settings.xml फ़ाइल खोजने की जरूरत है, तो संपादित <localRepository>/path/to/local/repo</localRepository>

+0

कृपया प्रश्न का पहला बुलेट बिंदु देखें –

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