intellij idea - त्रुटि: java: अमान्य स्रोत रिलीज़ 1.9


129

मैं अपने JSQL पार्सर वर्ग को चलाने की कोशिश कर रहा हूं, लेकिन मुझे मिल रहा है Error: java: invalid source release 1.9

मैंने इस उत्तर का अनुसरण करने की कोशिश की । मैंने फ़ाइल> बिल्ड, एक्ज़ीक्यूशन, परिनियोजन> जावा कंपाइलर> प्रोजेक्ट बायटेकोड संस्करण: 1.8 को बदल दिया। हालाँकि, मैं मॉड्यूल भाषा स्तर और प्रोजेक्ट भाषा स्तर 1.8 को नहीं बदल सकता क्योंकि इसके लिए कोई विकल्प नहीं है। मुझे अभी भी नीचे वही त्रुटि मिलती है।

त्रुटि यहाँ छवि विवरण दर्ज करें

कोड

package cs4321.project2;

import java.io.FileReader;
import net.sf.jsqlparser.parser.CCJSqlParser;
import net.sf.jsqlparser.statement.Statement;
import net.sf.jsqlparser.statement.select.Select;

public class Parser {
    private static final String queriesFile = "resources/input/queries.sql";

    public static void main(String[] args) {
        try {
            CCJSqlParser parser = new CCJSqlParser(new FileReader(queriesFile));
            Statement statement;
            while ((statement = parser.Statement()) != null) {
                System.out.println("Read statement: " + statement);
                Select select = (Select) statement;
                System.out.println("Select body is " + select.getSelectBody());
            }
        } catch (Exception e) {
            System.err.println("Exception occurred during parsing");
            e.printStackTrace();
        }
    }
}

इंटेलीज का क्या संस्करण?
सोरापद्मन

@soorapadman intellij idea 2017.2.2
एलेक्स

लगता है ठीक है यह काम करना चाहिए। क्या आप मावेन परियोजना के साथ काम कर रहे हैं?
सोरापद्मन

हालाँकि, मैं मॉड्यूल भाषा स्तर और प्रोजेक्ट भाषा स्तर 1.8 को नहीं बदल सकता क्योंकि इसके लिए कोई विकल्प नहीं है। ऐसा क्यों हैं? और ऐसा करने की कोशिश करते समय आपको क्या त्रुटि मिलती है? इसके अलावा 1.9 जावा संस्करण लगता है। क्या आपके पास Java-9 आपकी मशीन / intelliJ पर कॉन्फ़िगर है?
नमन

जवाबों:


324

प्रोजेक्ट का चयन करें, फिर फ़ाइल> ProjectStructure> ProjectSettings> मॉड्यूल -> स्रोत आपके पास शायद भाषा स्तर 9 पर सेट है:

स्क्रीनशॉट

बस इसे 8 में बदलें (या आपको जो भी चाहिए) और आप जाने के लिए तैयार हैं।

इसके अलावा, प्रोजेक्ट सेटिंग्स> प्रोजेक्ट के तहत ऊपर बताए गए समान भाषा स्तर की सेटिंग्स की जाँच करें

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


1
ओह, आखिरकार मुझे पता है कि परियोजना भाषा के स्तर का क्या मतलब है, धन्यवाद
डैनियल दाई

1
इसके अलावा, ऊपर की छवि में,
जॉन पीटर्स

1
Pom.xml में बेहतर बदलाव <java.version> 1.8 </java.version> के रूप में, अन्यथा यह फिर से शुरू होने पर कॉन्फ़िगरेशन रीसेट कर सकता है intellij में
राकेश येम्बाराम

21

कभी-कभी प्रोजेक्ट बायटेकोड के गलत संस्करण के कारण समस्या होती है।

इसलिए इसे सत्यापित करें: फ़ाइल -> सेटिंग्स -> निर्माण, निष्पादन, तैनाती -> संकलक -> जावा कंपाइलर -> प्रोजेक्ट बायटेकोड संस्करण और इसका मूल्य 8 पर सेट करें

उदाहरण


1
यह परियोजना सेटिंग्स के शीर्ष पर मेरे लिए समाधान था-> मॉड्यूल -> भाषा स्तर
केमल अतीक

1
यह स्वीकार किए जाते हैं के लिए एक महान पूरक जवाब है।
डाल्टन

15

मेरी भी यही समस्या थी। एक उत्तर है:

  • 1. CTRL + ALT + SHIFT + S ;
    1. फिर " मॉड्यूलस" पर जाएं ;
    2. " निर्भरता ;
    3. " मॉड्यूल एसडीके " बदलें ।

समझ गया! अब यू जावा 9 है!


5

IntelliJ-अवैध स्रोत

आपको प्रोजेक्ट सेटिंग्स में JAVA SDK और उपयुक्त भाषा स्तर सेट करना है। बड़ा करने के लिए क्लिक करें।


3

मावेन परियोजना का उपयोग करते समय।

pom.xml फ़ाइल की जाँच करें

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>9</java.version>
</properties>

अगर आप 8 JDK है अपने मशीन में स्थापित है, परिवर्तन java.versionसे संपत्ति 9के लिए8


2

मैं सिर्फ एक समान मुद्दा था। परियोजना ने जावा 9 का उपयोग करके खोला था, लेकिन सभी मॉड्यूल और परियोजना 1.8 पर वापस सेट होने के बाद भी, मुझे अभी भी त्रुटि मिल रही थी।

मुझे ग्रैडल को परियोजना को ताज़ा करने के लिए मजबूर करने की आवश्यकता थी और फिर सब कुछ उम्मीद के मुताबिक चला।


1

वैकल्पिक रूप से परियोजना सेटिंग्स के माध्यम से:

  • प्रोजेक्ट सेटिंग्स
  • परियोजना
  • परियोजना भाषा स्तर (आपकी आवश्यकताओं के अनुसार निर्धारित)

आपका निर्माण कैसे स्थापित किया जाता है, इसके आधार पर, यह जाने का रास्ता हो सकता है।


1

में परियोजना संरचना में परियोजना एसडीके: 11 या उसके बाद के लिए और में एसडीके संशोधित परियोजना भाषा का स्तर: - लैम्ब्डा पैरामीटर के लिए स्थानीय चर वाक्य रचना 11 को संशोधित


0

इस समस्या से जूझ रहे किसी व्यक्ति के लिए जिसने डीनएम के समाधान की कोशिश की, लेकिन कोई फायदा नहीं हुआ, जाँच के लायक कुछ और है, जो आपके प्रोजेक्ट के लिए कॉन्फ़िगर किए गए JDK का संस्करण है। मैं जो कहना चाह रहा हूं वह यह है कि अगर आपने अपने प्रोजेक्ट के लिए JDK 8u191 (उदाहरण के लिए) कॉन्फ़िगर किया है, लेकिन भाषा का स्तर 8 से अधिक कुछ भी सेट है, तो आपको यह त्रुटि मिलने वाली है।

इस मामले में, शायद यह पूछना बेहतर होगा कि परियोजना के प्रभारी कौन हैं, जेडीके का कौन सा संस्करण स्रोतों को संकलित करने के लिए बेहतर होगा।


0

IntellijIdea में भी मुझे यही समस्या थी, प्रोजेक्ट का चयन करने के बाद, फिर File> ProjectStructure> ProjectSettings> Modules -> जो विकल्प दिखा रहा था - भाषा स्तर 9 पर सेट:

इसलिए, मैंने इसे 8 में बदल दिया। फिर भी मेरे मुद्दे का समाधान नहीं हुआ।

मुख्य मुद्दा pom.xml के साथ था। मैंने pom.xml फ़ाइल को पुनः प्राप्त किया और मेरी समस्या हल हो गई।

इसलिए, जब भी आपने pom.xml फ़ाइल बदली, तो IDEA को प्रोजेक्ट संरचना को अपडेट करने की आवश्यकता है। उदाहरण के लिए यदि आपने कुछ और निर्भरताएँ जोड़ी हैं, तो IDEA को उन्हें प्रोजेक्ट लाइब्रेरी के रूप में जोड़ना होगा।

"सेटिंग> बिल्ड, एक्ज़ीक्यूशन, डिप्लॉयमेंट> बिल्ड टूल्स> मेवेन> इम्पोर्ट" में आप "इम्पोर्ट मावेन प्रोजेक्ट्स को अपने आप चुन सकते हैं"। जब pom.xml को बदल दिया जाता है तो यह स्वचालित रूप से "रिइम्पोर्ट" क्रिया को लागू करेगा।

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


0

ग्रैडल मैं एक ही मुद्दा था और पहले के समाधानों में दी गई सभी सेटिंग्स को बदलने से कोई फर्क नहीं पड़ा। थान I ने build.gradle पर जाकर यह लाइन ढूंढी और इसे हटा दिया।

sourceCompatibility = '11'

और यह काम किया! :)

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