2013-12-08 10 views
5

निर्माण मैं apt-get install maven2 का इस्तेमाल किया है maven2.2.1 स्थापित करने के लिए। आदेश Hadoop 2.1.0 स्रोत प्रोग्राम को संकलित करने में, मैं Maven संस्करण को अपग्रेड करने की जरूरत है, लेकिन यह क्योंकि maven2.1.0 lib में नवीनतम है, फिर apt-get उपयोग करने में सक्षम नहीं है।त्रुटि: लगता है नहीं किया जा सका या मुख्य वर्ग org.codehaus.classworlds.Launcher लोड जबकि Maven 3.0.4

मैं आधिकारिक वेबसाइट से डाउनलोड किया apache-maven-3.0.5-bin.tar.gz, पथ /usr/local पर tar apache-maven-3.0.5-bin.tar.gz भाग गया, और अपाचे-Maven-3.0.5 को apache-maven लिंक डाल:

lrwxrwxrwx 1 root root 18 Dec 8 11:26 apache-maven -> apache-maven-3.0.5 
drwxr-xr-x 6 root root 1024 Dec 8 11:12 apache-maven-3.0.5 

export the order in the terminal like this: 
export M2_HOME=/usr/local/apache-maven 
export PATH=$PATH:$M2_HOME/bin 

इनपुट आदेश "निर्यात" की पहचान करने के:

............................................. 
declare -x M2_HOME="/usr/local/apache-maven" 
declare -x MANDATORY_PATH="/usr/share/gconf/ubuntu.mandatory.path" 
declare -x OLDPWD="/usr" 
declare -x PATH="/usr/lib/lightdm/lightdm:/usr/local/java/latest/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/apache-maven/bin" 

सभी लक्षण दिखाई Maven 3.0.5 विन्यास में सफल रहा है, लेकिन जब मैं इनपुट

mvn -version

टर्मिनल में

, तो वह ऐसा त्रुटियों को दिखाने:

Error: Could not find or load main class org.codehaus.classworlds.Launcher 

अगर मैं एक नया टर्मिनल और इनपुट mvn -version बदलने के लिए, यह पता चलता है:

[email protected]:~$ mvn -version 
Apache Maven 2.2.1 (rdebian-8) 
Java version: 1.7.0_45 
Java home: /usr/local/java/jdk1.7.0_45/jre 
Default locale: en_US, platform encoding: UTF-8 
OS name: "linux" version: "3.5.0-17-generic" arch: "amd64" Family: "unix" 

यह हर समय होता है हालांकि मैंने मेवेन 2.2.1 को अनइंस्टॉल किया था:

sudo apt-get remove --purge maven

मुझे नहीं पता क्यों? मैंने इसे पूरी तरह से अनइंस्टॉल नहीं किया है?

उत्तर

2

मैं मेवेन की एक नई स्थापना की सिफारिश करता हूं। सबसे पहले, Maven के सभी संस्करणों के सभी प्रतिष्ठानों आपके सिस्टम

$ sudo apt-get remove maven

अगला से, बजाय पैकेज प्रबंधक से डाउनलोड करने की, हटाने सरकारी अपाचे वेबसाइट से डाउनलोड। मैं मैवेन (3.1.एक्स) का नवीनतम संस्करण प्राप्त करने की अनुशंसा करता हूं, और इसे उस निर्देशिका में निकालें जहां आपने विशेषाधिकार पढ़े/लिख दिए हैं।

$ tar -xvf apache-maven-3.1.1.tar.gz

अन्त में सभी सिमलिंक और घर चर Maven के लिए निर्धारित अद्यतन करें। आपके पास पर्यावरण चर को परिभाषित करने का विकल्प है।

  1. /etc/environment -> कुछ लोग स्पष्ट कारणों से यहां वैश्विक चर सेट करने की पुनर्मूल्यांकन नहीं करते हैं।
  2. /etc/bashrc -> मैं व्यक्तिगत रूप से इसका उपयोग किसी भी पर्यावरण चर को निर्यात करने के लिए करता हूं।
+0

आपके उत्तर के लिए बहुत बहुत धन्यवाद, मैंने समस्या हल कर दी है, मुझे स्थापित maven2.2.1 को हटाने के लिए apt-get remove maven2 का उपयोग करना चाहिए, और इस स्थापित maven2.2.1.the को कॉन्फ़िगर करने के लिए apt-get का उपयोग करना चाहिए मैवेन स्थापित करें maven3.0 + संस्करण स्थापित कर सकते हैं। – user3079078

+0

अगर यह उपयोगी था –

5

नीचे इस सवाल का जवाब (M2_HOME के ​​बजाय M3_HOME की स्थापना) ने मेरी समस्या का http://www.johnlabarge.com/post/33156663109/dreaded-maven-error-could-not-find-or-load-main-class

I had this little issue on my Mac after installing maven3 and jdk1.7. Here is what fixed my issue:

1) Remove the M2_HOME variable from the path.

2) Add M3_HOME variable with the path to your maven 3 installation.

Here is the interesting part: I use symbolic links for versioning. The values of both M2_HOME and M3_HOME were identical. Both were /Developer/maven. Hence it appears that the name M2_HOME in place of M3_HOME is what actually causes the issue. I leave it as an exercise (that I may return to) to find the issue in the source.

+0

+1 उत्तर देने के लिए उत्तर को स्वीकार/स्वीकार न करें। मुझे विंडोज़ पर मेवेन 2 से 3 तक अपग्रेड करने का यह मुद्दा था। मार्ग से स्थापित मैवेन 2 के सभी उल्लेखों को खत्म करने के लिए पर्याप्त नहीं था, मुझे भी एम 2_एचओएमई वैरिएबल को भी निचोड़ना पड़ा। –

3

मैं यह त्रुटि भी हल कर दिया। बाहर निकलता है मैं अपने खोल को फिर से शुरू करना भूल गया था।

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

0

मुझे विंडोज 8 में एक ही समस्या का सामना करना पड़ा, लेकिन मेरे मामले में मैवेन निर्देशिका जैसे apache-maven-3.3.3 छुपा था।

निर्देशिका apache-maven-3.3.3 से छिपे हुए विकल्प को हटाने के लिए पोस्ट मेरे लिए काम किया।

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