2011-10-10 13 views
168

के संस्करण से मेल नहीं खाता है मैंने एक्लिप्स हेलीओस संस्करण के तहत एक नई गतिशील परियोजना बनाई है, जहां मेरा जेआरई संस्करण 1.6 पर सेट है। मैंने पर क्लिक करके वेब एप्लिकेशन में मेवेन क्षमताओं को जोड़ा हैकॉन्फ़िगर करें मैवेन प्रोजेक्ट पर कनवर्ट करें।जावा कंपाइलर स्तर स्थापित जावा प्रोजेक्ट पहलू

इस जोड़ने के बाद, निर्माण त्रुटि ग्रहण समस्याएं दृश्य में दिखाई दिया:

Java compiler level does not match the version of the installed Java project facet. 
Unknown Faceted Project Problem (Java Version Mismatch) 

कृपया मुझे कैसे इस त्रुटि को हल करने के लिए (मैं 1.6 केवल के रूप में मेरे JRE संस्करण करना चाहते हैं) बताओ।

उत्तर

135

मान लीजिए कि आप ग्रहण में m2e प्लगइन का उपयोग कर रहे हैं, तो आपको source और target संस्करणों को maven-compiler-plugin के लिए 1.6 के रूप में निर्दिष्ट करने की आवश्यकता होगी। m2e प्रोजेक्ट के जावा कंपाइलर स्तर को निर्धारित करने के लिए इन मानों का उपयोग करता है। पोम का एक टुकड़ा नीचे दिखाया गया है:

<build> 
    <plugins> 
    <plugin> 
     <artifactId>maven-compiler-plugin</artifactId> 
     <configuration> 
      <source>1.6</source> 
      <target>1.6</target> 
     </configuration> 
    </plugin> 
    </plugins> 
</build> 

वैकल्पिक रूप से, आपको लगता है कि बराबर होने का होता है 1.6 के मूल्यों के साथ maven.compiler.source और maven.compiler.target गुण निर्दिष्ट कर सकते हैं,:

<properties> 
    <maven.compiler.target>1.6</maven.compiler.target> 
    <maven.compiler.source>1.6</maven.compiler.source> 
</properties> 
+36

आप यह कर सकते हैं: - अपनी परियोजना पर राइट क्लिक करें - क्लिक करें गुण - के तहत पहलुओं खंड - बाएं मेनू पर "परियोजना पहलुओं" विकल्प पर क्लिक दाईं तरफ "जावा", इसे "1.6", "1.7" या अपने संस्करण में बदलें ... - ठीक –

+2

@ थिगोगोपीरा पर क्लिक करें जब आप किसी भिन्न कार्यक्षेत्र में पुनः आयात करते हैं तो आप उन परिवर्तनों को खो देते हैं। जानें कि m2e कैसे काम करता है। –

332

अपनी परियोजना नहीं है, तो एक मेवेन प्रोजेक्ट, अपनी प्रोजेक्ट पर राइट-क्लिक करें और प्रोजेक्ट प्रॉपर्टी डायलॉग खोलने के लिए प्रॉपर्टी चुनें।

बाईं ओर एक प्रोजेक्ट फ़ैकेट आइटम है, इसे चुनें, सूची में जावा पहलू की तलाश करें, चुनें कि आप किस संस्करण को प्रोजेक्ट के लिए उपयोग करना चाहते हैं और आवेदन करें।

Project Factes - Java version

+15

प्रोजेक्ट फ़ेस-> जावा को maven-compiler-plugin artifact स्रोत और लक्ष्य के लिए pom.xml में जो कुछ भी मिलना चाहिए उससे मेल खाना चाहिए। –

+4

इस समस्या का मूल कारण @VineetReynolds –

+3

द्वारा प्रदान किया गया उत्तर होना चाहिए, मुझे यह समस्या है, और ऐसा लगता है कि यह एक मैवेन मुद्दा है, लेकिन मैं मैवेन का उपयोग नहीं करता, मेरे पास पीओएम फ़ाइल नहीं है, और मैं ' मुझे यकीन नहीं है कि मेरे पास मेवेन प्लगइन है। फिर भी मुझे यह त्रुटि मिलती है; मेरा ग्रहण जावा 1.7 का उपयोग करने के लिए स्थापित है लेकिन मेरे प्रोजेक्ट का पहलू पृष्ठ मुझे केवल 1.6 चुनने देगा। मैं क्या गलत कर रहा हूं? – rjcarr

14

टी Gospodinov जवाब भी Maven परियोजनाओं के लिए सही है। सावधान रहें: मैं मेवेन का उपयोग करता हूं। पोम सही था और अभी भी यह मुद्दा मिला है। मैं "प्रोजेक्ट फैक्ट्स" गया और वास्तव में जावा चयन को हटा दिया जो 1.6 को इंगित कर रहा था लेकिन मेरी परियोजना 1.7 का उपयोग कर रही है। "रनटाइम" टैब में दाईं ओर मुझे jdk1.7 विकल्प देखना था। "लागू करें" हिट करने के बाद भी बाईं ओर कुछ भी दिखाई नहीं दिया। मुद्दा दूर चला गया, यही कारण है कि मुझे अभी भी लगता है कि यह उत्तर विशिष्ट "परियोजना Facets" संबंधित मुद्दे के लिए महत्वपूर्ण है। यदि आप "प्रोजेक्ट फैक्ट्स" पर वापस आते हैं तो ठीक है, तो आप जावा को संस्करण 1.7 के रूप में दिखाएंगे, ताकि आप यह सुनिश्चित कर सकें कि परियोजना जावा प्रोजेक्ट के रूप में "चिह्नित" है। मुझे परियोजना पर राइट क्लिक करने और मेवेन अपडेट अपडेट परियोजना की भी आवश्यकता है।

2

सही परियोजना क्लिक करें और गुण का चयन बाएं से जावा संकलक क्लिक करें और अपने आवश्यक संस्करण के लिए आशा बदलने पर भी यह मदद करता है

3

परियोजना Facet-> जावा के लिए pom.xml में से मेल खाना चाहिए जो कुछ भी आपके पास मेवेन-कंपाइलर-प्लगइन आर्टिफैक्ट स्रोत और लक्ष्य। यह सही है। लेकिन अगर आपके पास यह नहीं है तो आप सेटिंग से पोरजेक्ट-फैक्स में जावा कंपाइलर संस्करण से मेल करके इसे ठीक कर सकते हैं: ग्रहण-> प्राथमिकताएं-> जावा-> कंपाइलर

3

मैंने workspace/project/.setting/org.eclipse.wst.common.project.facet.core के अंदर कॉन्फ़िगरेशन को बदल दिया:

installed facet="jst.web" version="2.5" 
installed facet="jst.java" version="1.7" 

कॉन्फ़िगरेशन बदलने से पहले, आईडीई से परियोजना को हटा दें। यह मेरे लिए काम किया।

+0

ने ग्रहण से परियोजना को हटा दिया और फिर से आयात किए गए मुद्दे को फिर से आयात किया। –

3

मैं MyProject --->जावा संसाधन से इसका समाधान नहीं होता ---->पुस्तकालयों -> जम्मू आरई प्रणाली पुस्तकालय [जावा-1.6] इस पर क्लिक अपने "संपत्ति के लिए जाना "का चयन करें " क्लासपाथ कंटेनर " जावा-1.8 (jdk1.8.0-35) को निष्पादन पर्यावरण बदल (कि नवीनतम है)

Change the jdk to latest

3

आप परियोजना से परियोजना पहलू बदल सकते हैं -> गुण -> परियोजना पहलू -> जावा ->

0

तो ग्रहण का उपयोग कर,

{JDK संस्करण की आवश्यकता} Under.settings पर क्लिक करें org.eclipse.wst.common.project.facet.core.xml

<?xml version="1.0" encoding="UTF-8"?> 
<faceted-project> 
    <installed facet="java" version="1.7"/> 
</faceted-project> 

बदलें सही संस्करण संस्करण।

1

ग्रहण में, अपनी परियोजना पर राइट क्लिक करें, मेवेन> अद्यतन projetc पर जाएं। प्रतीक्षा करें और त्रुटि गायब हो जाएगी। यह पहले से ही इस परियोजना के लिए जावा का संस्करण सही ढंग से कॉन्फ़िगर किया गया है।

enter image description here

4

मैं परियोजना संपत्तियों की परियोजना पहलू संपत्ति में जावा संस्करण की स्थापना करके इस समस्या का समाधान, सही परियोजना रूट फ़ोल्डर क्लिक करें -> गुण, परियोजना पहलुओं के लिए खोज, और संगत जावा संस्करण का चयन करें।

संदर्भ के लिए -

enter image description here