IntelliJ: त्रुटि: जावा: त्रुटि: रिलीज़ संस्करण 5 समर्थित नहीं है


14

मैं IntelliJ IDEA Ultimate 2019.3.1 का उपयोग कर रहा हूं । जब भी मैं कोई सरल जावा मावेन परियोजना शुरू करने की कोशिश करता हूं (हो सकता है कि यह एक साधारण हैलो वर्ल्ड भी हो) मुझे निम्न त्रुटि मिलती है:

Error:java: error: release version 5 not supported

java --versionटर्मिनल चलाने से मुझे निम्नलिखित आउटपुट मिलते हैं:

openjdk 11.0.5 2019-10-15
OpenJDK Runtime Environment (build 11.0.5+10-post-Ubuntu-0ubuntu1.1)
OpenJDK 64-Bit Server VM (build 11.0.5+10-post-Ubuntu-0ubuntu1.1, mixed mode, sharing)

javac --versionटर्मिनल चलाने से मुझे निम्नलिखित आउटपुट मिलते हैं:

javac 11.0.5

जावा कंपाइलर की सेटिंग में जाना (जैसा कि यहाँ सुझाव दिया गया है ) मैं इसे देखता हूँ:

जावा कंपाइलर सेटिंग्स

मैंने " लक्ष्य बाइटकोड संस्करण " को 1.8 तक संपादित करने की कोशिश की, लेकिन मुझे निम्नलिखित त्रुटियां मिलीं:

Error:(1, 26) java: package javafx.application does not exist
Error:(2, 20) java: package javafx.stage does not exist
Error:(4, 27) java: cannot find symbol
  symbol: class Application
Error:(12, 23) java: cannot find symbol
  symbol:   class Stage
  location: class Main
Error:(7, 9) java: cannot find symbol
  symbol:   method launch(java.lang.String[])
  location: class Main
Error:(11, 5) java: method does not override or implement a method from a supertype

संस्करण १.११ में इसे बदलने के बदले मुझे यह त्रुटि मिली:

Error:java: Source option 5 is no longer supported. Use 6 or later.

आप क्या सोचते हैं समस्या क्या है? मैं इसे कैसे हल कर सकता हूं?


परियोजना का भाषा स्तर और मॉड्यूल क्या है?
बास लीजडेकर्स

जवाबों:


33

Https://stackoverflow.com/a/12900859/104891 देखें  ।

सबसे पहले, सेट language level/ release versionsमें pom.xmlइस तरह:

<properties>
  <maven.compiler.source>1.8</maven.compiler.source>
  <maven.compiler.target>1.8</maven.compiler.target>
</properties>

मावेन डिफ़ॉल्ट को 1.5 पर सेट करता है। maven-compiler-pluginयदि आपको पहले से नहीं है , तो आपको भी शामिल करना होगा:

<dependency>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-compiler-plugin</artifactId>
  <version>3.8.1</version>
</dependency>

इसके अलावा, इन स्थानों में से प्रत्येक में जावा संस्करण को बदलने का प्रयास करें:

फ़ाइल -> परियोजना संरचना -> परियोजना -> परियोजना एसडीके -> 11।

फ़ाइल -> परियोजना संरचना -> परियोजना -> परियोजना भाषा स्तर -> 11

फ़ाइल -> परियोजना संरचना -> परियोजना -> मॉड्यूल -> -> स्रोत -> 11

परियोजना में -> ctrl+ alt+ s-> निर्माण, निष्पादन, तैनाती -> संकलक -> जावा संकलक -> परियोजना बायटेकोड संस्करण -> 11

परियोजना में -> ctrl+ alt+ s-> निर्माण, निष्पादन, तैनाती -> संकलक -> जावा संकलक -> मॉड्यूल - 1.11।


2
मैंने सब कुछ किया है, लेकिन फिर भी मुझे वही त्रुटि दिखाई देती है जब भी मैं एप्लिकेशन चलाता हूं
तुषार जाजोदिया

@ तुषारजोदिया maven-compiler-pluginएक निर्भरता के रूप में प्रयास करते हैं
जोश जॉनसन

भाग्य के बिना ऑनलाइन विभिन्न समाधानों की कोशिश करने के बाद, इस विशेष लाइन ने समस्या को ठीक किया: फ़ाइल -> परियोजना संरचना -> परियोजना -> मॉड्यूल -> -> स्रोत -> 11
Maude

2

एक वास्तविक समाधान को एकत्र करने के लिए मुझे कुछ समय लगा, लेकिन इस संकलन त्रुटि से कैसे छुटकारा पाएं।

  1. इंटेलीज प्राथमिकताएं खोलें
  2. "कंपाइलर (या" compi "जैसी कोई चीज़ खोजें
  3. मावेन को नीचे स्क्रॉल करें -> जावा कंपाइलर। सही पैनल में, मॉड्यूल और उनके संबंधित जावा संकलित संस्करण "लक्ष्य बाइटकोड संस्करण" की एक सूची होगी।
  4. एक संस्करण का चयन करें> 1.5। यदि कोई उपलब्ध नहीं है, तो आपको अपने jdk को अपग्रेड करना पड़ सकता है। यहाँ छवि विवरण दर्ज करें

1

यदि आप एक अभिभावक के रूप में स्प्रिंग बूट का उपयोग कर रहे हैं, तो आपको java.version गुण सेट करना चाहिए, क्योंकि यह स्वचालित रूप से सही संस्करण सेट करेगा।

<properties>
   <java.version>11</java.version>
</properties>

आपके स्वयं के प्रोजेक्ट में परिभाषित संपत्ति माता-पिता पोम में जो कुछ भी सेट है, उससे आगे निकल जाती है। यह सही संस्करण को संकलित करने के लिए सभी आवश्यक गुणों को ओवरराइड करता है।

कुछ जानकारी यहाँ मिल सकती है: https://www.baeldung.com/maven-java-version


मैं अब स्प्रिंग बूट के बारे में भी सीखना शुरू कर रहा हूं, इसलिए यह जानकारी वास्तव में मेरे लिए उपयोगी हो सकती है :) क्या आप कृपया इसे और अधिक विस्तार से बता सकते हैं? (मुझे किस फ़ाइल में उन गुणों को बदलना चाहिए, मुझे क्या लिखना चाहिए ...?) धन्यवाद!
रॉब

1
मैंने अपनी पोस्ट में कुछ अतिरिक्त जानकारी जोड़ी।
वी जानसन

1

यदि आपका उपयोग कर रहे हैं intellj की स्थापना के लिए मिला => संकलक संस्करण को वर्तमान जावा संस्करण में परिवर्तित करें


0

मैं अपनी pom.xmlफ़ाइल में अगला कोड जोड़ता हूं , इससे मेरी समस्या हल हो गई।

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>

0

आपको अपने pom.xml में केवल दो लाइनों को जोड़ना होगा और उसके बाद आपकी समस्या दूर हो जाएगी। इस दो लाइन को अपने pom.xml में जोड़ें -

<!--pom.xml-->
<properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>

0

IntelliJ के भीतर, pom.xml फ़ाइल खोलें

इस खंड को पहले जोड़ें (यदि आपकी फ़ाइल में पहले से ही एक खंड है, तो बस उस मौजूदा खंड के नीचे की पंक्तियों को जोड़ें):

<properties> 
      <maven.compiler.source>1.8</maven.compiler.source> 
      <maven.compiler.target>1.8</maven.compiler.target> 
   </properties>`

0

मेरे मामले में एकमात्र कार्यशील समाधान निम्नलिखित ब्लॉक को जोड़ रहा था pom.xml:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.0</version> <configuration> <release>12</release>
        </configuration>
        </plugin>
    </plugins>
</build>
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.