जावा संकलक स्तर स्थापित जावा परियोजना के पहलू के संस्करण से मेल नहीं खाता है


202

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

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

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

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


बिगलेफ्टी के जवाब ने मुझे गैर मावेन परियोजना के लिए अच्छी सेवा दी।
जैक मेसन

ग्रहण उपयोगकर्ता इस पत्रिका
अहमद नदीम

जवाबों:


166

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

<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>

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

3
@ThiagoPereira जब आप किसी भिन्न कार्यक्षेत्र में पुन: आयात करते हैं तो आप उन परिवर्तनों को खो देते हैं। जानें कि कैसे काम करता है m2e।
विनीत रेनॉल्ड्स

ग्रहण उपयोगकर्ता journaldev.com/3334/…
अहमद नदीम

400

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

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

प्रोजेक्ट फैक्ट्स - जावा संस्करण


19
प्रोजेक्ट फेस-> जावा को आपके पास pav.xml में मावेन-कंपाइलर-प्लगइन विरूपण साक्ष्य स्रोत और लक्ष्य के लिए जो कुछ भी है, उससे मेल खाना चाहिए।
आर्य रोसेनस्टीन

4
इस समस्या का मूल कारण @VineetReynolds द्वारा प्रदान किया गया उत्तर होना चाहिए
जैरी तियान

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

7
चार चीजों का मिलान होना चाहिए 1) प्रोजेक्ट-> जावा बिल्ड पाथ-> लाइब्रेरीज़-> जेआरई संस्करण 2) प्रोजेक्ट-> जावा कंपाइलर-> कंपाइलर कंप्लायंस लेवल 3) प्रोजेक्ट-> प्रोजेक्ट पहलू-> जावा-> संस्करण 4) (यदि मावेन का उपयोग कर रहे हैं) ) pom.xml - maven-compiler-plugin विरूपण साक्ष्य स्रोत और लक्ष्य
bigleftie

1
मैं दूसरा @TK Gospodinov उत्तर। जावा संस्करण के साथ मेरी पोम तारीख तक थी, लेकिन परियोजना का पहलू अपराधी था।
सोमन दुबे

18

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


6

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

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

यहां छवि विवरण दर्ज करें


5

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

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

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


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

5

मैंने इसे Myproject ---> java Resource ----> पुस्तकालयों -> J RE सिस्टम लाइब्रेरीज़ [java-1.6] द्वारा हल किया, इस पर क्लिक करके इसके " प्रॉपर्टी " पर जाएं "Classpath कंटेनर" चुनें एक्ज़ॉशन एनवायरनमेंट को java- में बदलें। १. is (jdk1.8.0-35) (यह नवीनतम है )

Jdk को नवीनतम में बदलें


4

Project Facet-> जावा को आपके पास pav.xml में मावेन-कंपाइलर-प्लगइन विरूपण साक्ष्य स्रोत और लक्ष्य के लिए मेल खाना चाहिए। यह एकदम सही है। लेकिन अगर आपके पास यह दान है, तो आप इसे जावा बॉयलर संस्करण से मेल करके भी ठीक कर सकते हैं। सेटिंग से विषय-पहलुओं में: Eclispe-> प्राथमिकताएं-> जावा-> संकलक



3

प्रोजेक्ट पर राइट-क्लिक करें और प्रॉपर्टीज़ का चयन करें। बाईं ओर से जावा कंपाइलर पर क्लिक करें और अपने आवश्यक संस्करण में बदलें। आशा है कि यह मदद करता है


2

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

यहां छवि विवरण दर्ज करें


1

यदि ग्रहण का उपयोग कर रहे हैं,

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>

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.