2012-09-08 14 views
8

हाल ही में मुझे लिनक्स केंद्रों पर अपाचे टॉमकैट 6.0.35 के साथ समस्या का सामना करना पड़ रहा है। मैं त्रुटि हो रही है -java.lang.UnsupportedClassVersionError: myApp: असमर्थित major.minor संस्करण 51.0 (क्लास myApp लोड करने में असमर्थ) लिनक्स

java.lang.UnsupportedClassVersionError: myApp : Unsupported major.minor version 51.0 (unable to load class myApp) 

जब मैं कमांड देना -

javac -version 

-

java -version 

यह

java version "1.6.0_22" 
OpenJDK Runtime Environment (IcedTea6 1.10.9) (rhel-1.28.1.10.9.el5_8-x86_64) 
OpenJDK 64-Bit Server VM (build 20.0-b11, mixed mode) 

इसी शो जब मैं कमांड देना यह दिखाता है -

javac 1.6.0_22 

जावा पता लगाने के लिए मैं आदेश दे -

whereis java 

उत्पादन होता है -

java: /usr/bin/java /etc/java /usr/lib/java /usr/share/java /usr/share/man/man1/java.1.gz 

और

which java 

के लिए यह प्रदर्शित करता है -

/usr/bin/java 
के लिए

which javac 

आउटपुट

इसके अलावा

/usr/bin/javac 

कहाँ MyApp जावा परियोजना Windows में विकसित किया है और लिनक्स पर Tomcats 'webapp निर्देशिका में युद्ध फ़ाइल अपलोड की है।

मुझे क्या हो रहा है नहीं मिल रहा है? कृपया किसी को समस्या का समाधान करने में मेरी मदद कर सकते हैं?

अग्रिम धन्यवाद।

उत्तर

6

आपको जावा 7 रनटाइम की आवश्यकता है, जावा 6 नहीं। इस बारे में कुछ विवरणों के लिए http://en.wikipedia.org/wiki/Java_class_file#General_layout देखें।

वैकल्पिक रूप से, आप फिर से संकलित अपने कोड जावा के साथ संगत होना करने के लिए 6.

+0

त्वरित उत्तर के लिए धन्यवाद ziesemer। मैं संकलन और पर्यावरण दोनों चलाने के लिए एक ही संस्करण कैसे बनाना चाहिए? – Deepu

+0

आपको जो कुछ करना है, उसके लिए हमें और अधिक जानकारी चाहिए।मान लें कि "myApp" कुछ लिखा है और संकलित है, सुनिश्चित करें कि आप जावा 7 जेडीके के बजाए जावा 6 जेडीके के साथ ऐसा कर रहे हैं - * या * सुनिश्चित करें कि सर्वर पर एक जावा 7 रनटाइम उपलब्ध है जहां आप उम्मीद कर रहे हैं इसे चलाओ। यदि आप चीजों को बहुत सरल रखना चाहते हैं, तो उसी कोड को संकलित करने के लिए उसी जेडीके का उपयोग करें जिसे आप इसे चलाने की उम्मीद करते हैं। – ziesemer

+0

हाय ज़ीसेमर, myApp जावा परियोजना में विंडोज़ प्रोजेक्ट है और लिनक्स पर WAR फ़ाइल अपलोड की गई है (कृपया मेरा अपडेट किया गया प्रश्न देखें) – Deepu

1

लग रहा है अपने कोड की तरह jdk7 साथ संकलित किया गया है खोजने की जरूरत है और/या?

+0

हाय पीटर, मैं बिल्कुल नहीं जानता। – Deepu

3

अपवाद इसलिए है क्योंकि आपके कोड को चलाने के लिए एक उच्च संस्करण का उपयोग करके योर कोड संकलित किया गया है। अपनी विंडोज़ मशीन में आप युद्ध के निर्माण के लिए विंडोज 7 का उपयोग कर सकते हैं। अपनी विंडोज मशीन में javac -version देखें।

+0

हां बेसिलजम्स यह सच है, अब मैं अपने जावा को विंडोज़ पर बदलने जा रहा हूं। – Deepu

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