ইন্টেলিজ ধারণা - ত্রুটি: জাভা: অবৈধ উত্স প্রকাশ 1.9


129

আমি আমার জেএসকিউএল পার্সার ক্লাস চালানোর চেষ্টা করছি, তবে পাচ্ছি 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 ইন্টিলিজ ধারণা 2017.2.2
অ্যালেক্স

ঠিক আছে এটা কাজ করা উচিত। আপনি কি মাভেন প্রকল্প নিয়ে কাজ করছেন?
সৌরপাদমান

তবে, আমি মডিউল ভাষা স্তর এবং প্রকল্পের ভাষা স্তরটি 1.8 এ পরিবর্তন করতে পারি না কারণ এর জন্য বিকল্প নেই। কেন যে এত? এবং এটি করার চেষ্টা করার সময় আপনি কোন ত্রুটি পেয়েছেন? এছাড়াও 1.9 জাভা সংস্করণ বলে মনে হচ্ছে। আপনার জাভা -9 আপনার মেশিনে / ইন্টেলিজজে কনফিগার করা আছে?
নামান

উত্তর:


324

প্রকল্পটি নির্বাচন করুন, তারপরে ফাইল> প্রকল্পের কাঠামো> প্রজেক্টসেটেটিং> মডিউলগুলি -> উত্স আপনার সম্ভবত ভাষা স্তরটি 9 এ সেট করা আছে:

স্ক্রিনশট

কেবল এটি 8 এ পরিবর্তন করুন (বা আপনার যা কিছু প্রয়োজন) এবং আপনি যেতে প্রস্তুত set

এছাড়াও, প্রকল্প সেটিংস> প্রকল্পের আওতায় উপরে উল্লিখিত একই ভাষা স্তরের সেটিংস পরীক্ষা করুন

এখানে চিত্র বর্ণনা লিখুন


1
ওহ, অবশেষে আমি জানি ভাষা প্রকল্পের স্তরটির অর্থ কী, ধন্যবাদ
ড্যানিয়েল ডাই

1
এছাড়াও, উপরের চিত্রটিতে, মডিউল বিভাগে যেতে ভুলবেন না
জন পিটারস

1
Pom.xML <java.version> ১.৮ </ java.version> এ আরও ভাল পরিবর্তন হিসাবে, অন্যথায় এটি পুনর্নির্মাণের পরে ইন্টেলিজে কনফিগারেশনটি পুনরায় সেট করতে পারে
রাকেশ ইয়ামবারাম ২

21

কখনও কখনও প্রকল্পটি বাইকোডের ভুল সংস্করণের কারণে সমস্যা দেখা দেয়।

সুতরাং এটি যাচাই করুন: ফাইল -> সেটিংস -> বিল্ড, এক্সিকিউশন, স্থাপনা -> সংকলক -> জাভা সংকলক -> প্রকল্প বাইটোকড সংস্করণ এবং এর মান 8 এ সেট করুন

উদাহরণ


1
প্রকল্পের সেটিংস-> মডিউলগুলি -> ভাষা স্তর
কামাল আতিক

1
এটি গৃহীত উত্তরটির একটি দুর্দান্ত পরিপূরক উত্তর।
ডাল্টন

15

আমারও একই সমস্যা হয়েছে। একটি উত্তর আছে:

  • 1. সিটিআরএল + অল্ট + শিফট + এস ;
    1. তারপরে " মডিউল" এ যান ;
    2. " নির্ভরতা ;
    3. " মডিউল এসডিকে " পরিবর্তন করুন ।

বুঝেছি! এখন আপনার জাভা 9 আছে!


5

intellij-অবৈধ সোর্স

আপনি প্রকল্প সেটিংসে জাভা এসডিকে এবং উপযুক্ত ভাষা স্তর সেট করতে হবে। সম্প্রসারিত করতে ক্লিক করুন.


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

ইন প্রজেক্টের গঠন মধ্যে প্রকল্প SDK এর: 11 বা উচ্চতর প্রয়োজন এবং এ SDK এর সংশোধন প্রকল্প ভাষা স্তর: - ল্যামডা পরামিতি জন্য স্থানীয় পরিবর্তনশীল সিনট্যাক্স থেকে 11 সংশোধন


0

এই সমস্যাটির সাথে যে কেউ ডিএনএমের সমাধানের চেষ্টা করেছেন কিন্তু কোন লাভ হয়নি তার সাথে লড়াই করে, চেক করার মতো আরও কিছু আছে, যা আপনার প্রকল্পের জন্য আপনি জেডিকে কনফিগার করেছেন তার সংস্করণ। আমি যা বলতে চাইছি তা হ'ল যদি আপনি আপনার প্রকল্পের জন্য জেডিকে 8u191 (উদাহরণস্বরূপ) কনফিগার করেছেন তবে ভাষা স্তরটি 8 এর চেয়ে বেশি কিছুতে সেট করেছেন তবে আপনি এই ত্রুটিটি পেয়ে যাবেন।

এই ক্ষেত্রে, প্রকল্পটির দায়িত্বে থাকা কারও কাছে জিজ্ঞাসা করা ভাল, জেডিকে-র কোন সংস্করণটি উত্সগুলি সংকলন করা ভাল।


0

আমারও একই সমস্যা ছিল ইন্টেলিজআইডিয়ায়, প্রকল্পটি নির্বাচন করার পরে, ফাইল> প্রকল্পের কাঠামো> প্রকল্পসেটিং> মডিউলগুলি -> উত্স বিকল্পটি দেখছিল - ভাষা স্তরটি 9 এ সেট করা হয়েছে:

সুতরাং, আমি কেবল এটি 8 এ পরিবর্তন করেছি change তবুও আমার সমস্যাটির সমাধান হয়নি।

মূল সমস্যাটি ছিল pom.xML নিয়ে with আমি pom.xML ফাইলটি পুনঃনির্দেশিত করেছি এবং আমার সমস্যাটি সমাধান হয়ে গেছে।

সুতরাং, যখনই আপনি pom.xML ফাইল পরিবর্তন করেছেন, আইডিইএর জন্য প্রকল্পের কাঠামোটি আপডেট করা দরকার। উদাহরণস্বরূপ, যদি আপনি সেখানে আরও কিছু নির্ভরতা যুক্ত করেছেন, আইডিইএর জন্য সেগুলি প্রকল্প গ্রন্থাগার হিসাবে যুক্ত করা দরকার।

"সেটিংস> বিল্ড, এক্সিকিউশন, ডিপ্লয়মেন্ট> বিল্ড টুলস> ম্যাভেন> ইম্পোর্টিং" এ আপনি "ম্যাভেন প্রকল্পগুলি স্বয়ংক্রিয়ভাবে আমদানি" চয়ন করতে পারেন। Pom.xML পরিবর্তন করা হলে এটি স্বয়ংক্রিয়ভাবে "রেইম্পোর্ট" ক্রিয়া শুরু করবে।

এখানে চিত্র বর্ণনা লিখুন


0

গ্রেডল আমার একই সমস্যা ছিল এবং পূর্ববর্তী সমাধানগুলিতে প্রদত্ত সমস্ত সেটিংস পরিবর্তন করে কোনও পার্থক্য হয়নি। আমি বিল্ড.gradle এ গিয়ে এই লাইনটি খুঁজে পেয়ে এটি মুছলাম।

sourceCompatibility = '11'

এবং এটা কাজ করে! :)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.