2015-07-13 7 views
53

मैं हाल ही में की स्थापना रद्द जावा 8, जावा 6 उपयोग करने के लिए के रूप में मैं अपने कोड/कृतियों सिर्फ उन जावा 8 पर अधिक से अधिक लोगों द्वारा प्रयोग करने योग्य होने के लिए जब मैं mvn - version कर वापस करती हैं:जावा 6 असमर्थित MAJOR.MINOR संस्करण 51.0

Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/maven/cli/MavenCli : Unsupported major.minor version 51.0 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:615) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) 
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) 
    at java.net.URLClassLoader.access$000(URLClassLoader.java:58) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:197) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:401) 
    at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42) 
    at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:271) 
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:254) 
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:239) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.getMainClass(Launcher.java:144) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:266) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356) 

जब मैं करना java -version:

java version "1.6.0_45" 
Java(TM) SE Runtime Environment (build 1.6.0_45-b06) 
Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode) 

सब कुछ जावा के साथ ठीक लग रहा है, लेकिन यह भी होता है जब मैं निष्पादन योग्य जार को चलाने के लिए प्रयास करें। मैं मैन्युअल रूप से जावा जार कर (जार नाम) द्वारा उसके चारों ओर हो गया

+0

मैवेन का कौन सा संस्करण आप उपयोग कर रहे हैं? –

+0

** JAVA_HOME/bin/java -version ** जावा संस्करण "1.6.0_45" प्रिंट करता है? – Bikku

+0

बस जावा 8 का उपयोग करें और 1.6 संगतता –

उत्तर

71

maven website के अनुसार, जावा 6 का समर्थन करने वाला अंतिम संस्करण 3.2.5 है, और 3.3 और ऊपर जावा 7 का उपयोग करें। मेरा झुकाव यह है कि आप मेवेन 3.3 या उच्चतर का उपयोग कर रहे हैं, और या तो जावा 7 (और अपने पोम में उचित स्रोत/लक्ष्य विशेषताओं को सेट करें) या डाउनग्रेड मैवेन सेट करें।

+2

ओह धन्यवाद यह काम किया! –

+1

यह मेरी समस्या थी।मैंने हाल ही में 64 बिट्स के लिए ग्रहण के मर्स 2 संस्करण को स्थापित किया है और नई स्थापना ने मेरे बजाय इसके एम्बेडेड मेवेन संस्करण का उपयोग किया है। मैंने दो तरीकों की कोशिश की है: पहला व्यक्ति परियोजना के डी जेआरई संस्करण को 1.8 में बदलना था और दूसरा एक 1.6 जेआरई देना था और एम्बेडेड से मैवेन संस्करण को मेरी स्थानीय स्थापना में बदलना था और दोनों विकल्प – Facepalmed

+0

काम कर रहे थे जेडीई 1.8 और ठीक से इस समस्या को देख रहे हैं। – DrLou

8

संस्करण संख्या (51.0) इंगित करता है कि आप आप जावा 6.

के लिए उन्हें पुन: संयोजित करने की आवश्यकता होगी जावा 7. के लिए संकलित कक्षाएं चलाने के लिए कोशिश कर रहे हैं

नोट, हालांकि, कुछ विशेषताएं जावा 6 के साथ संगत नहीं हो सकती हैं, जो बहुत पुरानी है, और अब (सार्वजनिक रूप से) ओरेकल द्वारा समर्थित नहीं है।

+5

आप मजाकिया हैं ... यहां अधिकांश सरकार अभी भी जावा 6 का उपयोग करती हैं, असल में वे शायद ही कभी जावा 4 से वहां पहुंचे ... 4 से 6 तक स्ट्रेट चला गया! (और आपकी टिप्पणी पिछले साल से है! :) – VeenarM

2

मुझे भी इसी तरह के मुद्दे का सामना करना पड़ा। मैं खिड़कियों में पर्यावरण चर में JAVA_HOME सेट करके इसे हल करने में सक्षम हो सकता था। बैच फ़ाइल में JAVA_HOME सेट करना इस मामले में काम नहीं कर रहा है।

0

मुझे एक ही समस्या का सामना करना पड़ता है और मेरी उबंटू मशीन (16.04) में जावा के अद्यतन संस्करण के साथ JAVA_HOME चर जोड़कर हल किया जाता है। आप "अपाचे Maven 3.3.9" का उपयोग कर रहे हैं तो आप java7 या अधिक

चरण के साथ अपने JAVA_HOME अपग्रेड करने के लिए इस

1-sudo vim/etc/पर्यावरण

2-JAVA_HOME = जरूरत जावा स्थापना निर्देशिका (MyCase-/opt/देव/jdk1.7.0_45 /)

3-भागो गूंज $ JAVA_HOME JAVA_HOME निर्धारित मूल्य दे देंगे

4-अब mvn -संस्करण वांछित आउटपुट

दे देंगे
Apache Maven 3.3.9 

Maven home: /usr/share/maven 

Java version: 1.7.0_45, vendor: Oracle Corporation 

Java home: /opt/dev/jdk1.7.0_45/jre 

Default locale: en_US, platform encoding: UTF-8 

OS name: "linux", version: "4.4.0-36-generic", arch: "amd64", family: "unix" 
0

समस्या है क्योंकि आप सेट नहीं किया है JDK संस्करण properly.You प्रमुख संख्या 51 के लिए JDK 7 का उपयोग करना चाहिए इस तरह है:

JAVA_HOME =/usr/जावा/jdk1.7.0_79

0

मैं एक ही समस्या में भाग गया। मैं jdk 1.8 और maven 3.3.9 का उपयोग करता हूं एक बार जब मैं JAVA_HOME निर्यात करता हूं, तो मुझे यह त्रुटि दिखाई नहीं दे रही थी। निर्यात JAVA_HOME =/लाइब्रेरी/जावा/जावा वर्चुअल माचिन/जेडीके 1.8.0_121.jdk/सामग्री/होम/

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