আইডিইএ: জাভ্যাক: উত্স প্রকাশ 1.7 এর জন্য লক্ষ্য প্রকাশের 1.7 প্রয়োজন


474

JUnit পরীক্ষা চালানোর সময়, IntelliJ IDEA ব্যবহার করে, আমি পাই

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

আমি কীভাবে এটি সংশোধন করতে পারি?

  • এসডিকে ব্যবহার করে 1.7
  • মডিউল ভাষার স্তর 1.7

ম্যাভেন বিল্ড ঠিকঠাক কাজ করে। (এজন্যই আমি আইডিইএ কনফিগারেশন ইস্যুতে এটি বিশ্বাস করি)

উত্তর:


689

সম্ভবত আপনার এখানে ম্যাভেন থেকে ভুল সংকলক বিকল্পগুলি আমদানি করা হয়েছে:

সংকলক বিকল্প

এছাড়াও স্ক্রিনশটটিতে রূপরেখার করা প্রকল্প এবং মডিউল বাইটকোড ( লক্ষ্য ) সংস্করণ সেটিংস পরীক্ষা করুন।

অন্যান্য স্থান যেখানে উত্স ভাষার স্তরটি কনফিগার করা আছে:

  • প্রকল্প কাঠামো | প্রকল্প

প্রকল্পের

  • প্রকল্প কাঠামো | মডিউল (প্রতিটি মডিউল পরীক্ষা করুন) | সোর্স

সূত্র

ম্যাভেন ডিফল্ট ভাষা স্তর হল 1.5 (5.0), আপনি উপরে স্ক্রিনশট উপর মডিউল ভাষা স্তর হিসাবে এই সংস্করণে দেখতে হবে।

অভ্যন্তরে maven- সংকলক-প্লাগইন কনফিগারেশন ব্যবহার করে এটি পরিবর্তন করা যেতে পারে pom.xml:

<project>
  [...]
  <build>
    [...]
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
    </plugins>
    [...]
  </build>
  [...]
</project>

অথবা

<project>
  [...]
  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>
  [...]
</project>

ম্যাভেন প্রজেক্টস সরঞ্জাম উইন্ডোতে আপনি মাভেন প্রকল্পটি পুনর্বার করে দেওয়ার পরে ইন্টেলিজ আইডিইএ এই সেটিংটিকে সম্মান করবে :

পুনরায় ইম্পোর্ট করার পরিবর্তে


2
সঠিক। এই সেটিংটি কোনও প্রকল্পের সমস্ত মডিউলগুলির পক্ষে সাধারণ, বা এটি কোনও প্রদত্ত মডিউলটির সাথে সুনির্দিষ্ট?
জেমস রাইতসেভ

1
এই সেটিংটি প্রতি প্রকল্প হয়, সমস্ত মডিউলকে প্রভাবিত করে।
ক্রেজি কোডার

8
এটিকে ঠিক করার পরে এবং এটি প্রয়োগ করার পরে এটি কিছু ভুল মূল্যে ফিরে আসবে (মেভেন পরিবর্তন বা কোনও কিছুর মাধ্যমে) এর কোনও কারণ আছে কি?
প্যাট্রিক

5
@ পেট্রিক, আপনার pom.xmlজাভা সংকলক প্লাগ-ইন কনফিগারেশন জাভা সংস্করণ নির্দিষ্ট করতে পারে যা পরের বার আপনি পম.এক্সএমএল (যদি স্বয়ংক্রিয় রেম্পোর্ট সক্ষম হয়) বা ম্যানুয়ালি প্রজেক্টটি পুনরায় আমদানি করে তবে এই সেটিংটি ওভাররাইড করবে।
CrazyCoder

1
@ ক্র্যাজি কোডার আমি আমার পম.এক্সএমএল একবার পরিবর্তন করার পরে এটি পরিবর্তন করেছিলাম (পোমের অন্যান্য আগত পরিবর্তনের জন্য অপেক্ষা করছিলাম), যাতে এটি বেশ যুক্তিসঙ্গত ব্যাখ্যা বলে মনে হয়। ধন্যবাদ
প্যাট্রিক

358

ইন্টেলিজিজ 15, 2016 এবং 2017

ইন্টেলিজজে 13 এবং 14 এর জন্য নীচে আলোচিত মত, তবে সেটিংস / পছন্দসমূহ প্যানেলে একটি অতিরিক্ত স্তর সহ: সেটিংস > বিল্ড, এক্সিকিউশন, ডিপ্লোয়মেন্ট > কমপ্লায়ার > জাভা কম্পাইলার

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

ইন্টেলিজ 13 এবং 14

ইন্টেলিজজে 13 এবং 14 এ, আপনি আপনার মডিউলে কোনও আলাদা বাইকোড সংস্করণ লক্ষ্য করছেন না তা নিশ্চিত করতে সেটিংস> সংকলক> জাভা সংকলক ইউআই পরীক্ষা করে দেখুন ।

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


3
আমাকে আমার মডিউলগুলি মুছতে হয়েছিল এবং এটি স্বয়ংক্রিয়ভাবে সমাধান করতে দেওয়া হয়েছিল (
জেডিডি

3
সর্বশেষ আইডিয়া 14.1
তুষার

সুতরাং এখানে ঠিক কি?
অ্যালিক্লিজিন-কিলাকা

@ অ্যালিকেলজিন-কিলাকা, আপনার যা প্রয়োজন তা লক্ষ্যমাত্রা নির্ধারণ করুন।
ড্রয় নোকস

কেউ কি ব্যাখ্যা করতে পারেন যে তারা কেন মডিউল সেটিংসে নয়, বৈশ্বিক পছন্দগুলি কনফিগার স্ক্রিনে নির্দিষ্ট মডিউল সেটিংস রাখবেন ??
এমকে

61

ইন IntelliJ আইডিয়া 14.1 "লক্ষ্য বাইটকোড সংস্করণ" একটি ভিন্ন জায়গায় হয়।

নিম্নলিখিত পরিবর্তনগুলি আমার পক্ষে কাজ করেছে:

ফাইল> সেটিংস ...> বিল্ড, এক্সিকিউশন, স্থাপনা> সংকলক> জাভা সংকলক : টার্গেট বাইটোকোড সংস্করণ 1.5 থেকে 1.8 এ পরিবর্তন করুন

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

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


অথবা এটি খালি ছেড়ে দেওয়া ভাল, যখন এটি জেডিকে থেকে নির্ধারণ করা যেতে পারে!
ড্রাগনজর্ন

মাভেনের চেয়ে আলাদা কনফিগারেশন কেন?
অ্যালিক্লিজিন-কিলাকা

42

আপনি কি আপনার বিল্ড কনফিগারেশনটি দেখেছেন এটি পছন্দ করা উচিত যদি আপনি ম্যাভেন 3 এবং জেডিকে 7 ব্যবহার করেন

<build>
    <finalName>SpringApp</finalName>
    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.7</source>
                <target>1.7</target>
            </configuration>
        </plugin>
        ...
    </plugins>
    ...
</build>

22

আমি এটিতে ছুটে এসেছি এবং ঠিক করাটি ছিল প্রকল্প সেটিংস> মডিউলগুলি> নির্দিষ্ট মডিউল> নির্ভরতা ট্যাবে ক্লিক করতে। আমি লক্ষ্য করেছি যে মডিউল এসডিকে এখনও 1.6 এ সেট করা আছে, আমি এটিকে 1.7 এ পরিবর্তন করেছি এবং এটি কার্যকর হয়েছে।


আমি এটি চেষ্টা করেছিলাম ... আমি পৃথক মডিউলগুলি মুছতে এবং সেগুলি স্বয়ংক্রিয় সমাধানে ফেলে রেখে এসেছি।
আকিন ওকেগবিল ২

14

আমার ক্ষেত্রে সেটিংস> সংকলক> জাভা সংকলকটিতে প্রয়োজনীয় বিকল্পগুলি ('টার্গেট বাইটকোড সংস্করণ') পেয়েছি (অন্তর্নিহিত ধারণা 12.1.3)


10

নিম্নলিখিত পথে প্রকল্পের সংকলক সেটিং ফাইলটি সংশোধন করুন এবং 'লক্ষ্য'টিকে 1.7 এ পরিবর্তন করুন:

/project/.idea/compiler.xml

<bytecodeTargetLevel>
  <module name="project-name" target="1.7" />
</bytecodeTargetLevel>

ধন্যবাদ এটি আমার জন্য কাজ করেছে! প্রকল্পটি ডান ক্লিক করে "মডিউল তৈরি করুন" [আপনার অ্যাপের নাম] "করতে ভুলবেন না
শেহাজ

5

আমি ক্ষেত্রটি ফাঁকা সেট করে সমাধান করেছি:

সেটিংস> সংকলক> জাভা সংকলক> প্রকল্পের বাইকোড সংস্করণ

থান ইন্টেলিজ জেডিকে ডিফল্ট সংস্করণ ব্যবহার করে।


4

এক মুহূর্ত থেকে অন্য মুহুর্তেও আমি এই ত্রুটিটি স্পষ্ট কারণ ছাড়াই পেয়েছি। আমি সংকলক / মডিউল ইত্যাদিতে সমস্ত ধরণের সেটিংস পরিবর্তন করেছি তবে শেষ পর্যন্ত আমি কেবল মাভেন প্রকল্পটির পুনর্নির্মাণের মাধ্যমে ইন্টেলিজ প্রকল্প পুনরায় তৈরি করেছি এবং সমস্যাটি সমাধান হয়ে গেছে। আমি এই একটি বাগ সংশোধন করা হয় না।

ইন্টেলিজিজ 129.961


ইন্টেলিজি 14.1.2 এর জন্য এখানে একই। প্রকল্পটি রিম্পোর্ট করা হয়েছে এবং এটি স্থির হয়েছিল।
শ্রীকান্ত

4

আমি ইন্টেলিজ আইডিয়া 14 থেকে v14.1 এ সামান্য আপগ্রেড করার পরে এটিকে আঘাত করেছি। আমার পক্ষে শীর্ষ / প্যারেন্ট পোমের একটি সম্পাদনা পরিবর্তন করতে সহায়তা করেছে এবং তারপরে মাভেনকে পুনরায় আমদানি করতে ক্লিক করুন (এটি যদি স্বয়ংক্রিয় না হয়)।

তবে এটি মডিউল / সমষ্টি / পিতামাতা মডিউল এবং মাভেন -> রেম্পোর্টে ডান ক্লিকের পক্ষে যথেষ্ট।


এই আমার জন্য কাজ! আমি আমার শীর্ষ-স্তরের মডিউল এবং আমার সন্তানের মডিউলগুলির জন্য এটি করেছি
এপ্রিলেশন

2

আমি বেলো পদ্ধতিটি সমাধান করেছি

ফাইল >> প্রকল্পের কাঠামো >> প্রকল্প >> প্রকল্পের ভাষা স্তর -> সঠিক সংস্করণ সেট করবেন (উদা: 1.5)


1

.idea / misc.xML চেক করুন কখনও কখনও আপনার নিজের ভাষা পরিবর্তন করতে হবে লেভেল = "JDK_1_X" বৈশিষ্ট্যটি ম্যানুয়ালি


1

যদি এটি আপনার গ্রেড.gradle ফাইলে গ্রেডল প্রকল্প হয় তবে নিম্নলিখিত সেটিংসের জন্য অনুসন্ধান করুন:

sourceCompatibility = "xx"
targetCompatibility = "xx"

সমস্ত উপ-প্রকল্পের জন্য, আপনার রুট বিল্ড.gradle ফাইলে, আপনি এটি রাখতে পারেন:

subprojects { project ->
    sourceCompatibility = "1.7"
    targetCompatibility = "1.7"
}

যদিও আপনি আইডিয়া> সেটিংসে ম্যানুয়ালি ভাষার স্তর নির্ধারণ করতে পারেন, যদি এটি গ্রেডল প্রকল্প হয় তবে আইডিয়া স্বয়ংক্রিয়ভাবে গ্রেডল সেটিংস থেকে আইডিয়া আইএমএল ফাইলগুলি সিঙ্ক্রোনাইজ করে (আইডিয়া 15+ এর সাথে পরীক্ষিত)। গ্রেডল রিফ্রেশ হয়ে গেলে আপনার সমস্ত ম্যানুয়াল পরিবর্তনগুলি ওভাররেড হয়ে যায়।

গ্রেডল ডকুমেন্টেশনের ভিত্তিতে , যদি এগুলি সেট না করা হয়, তবে বর্তমান জেভিএম কনফিগারেশন ব্যবহৃত হয়।


1

আমি এই ত্রুটিটি চালানোর জন্য আরও একটি উপায় খুঁজে পেয়েছি। আপনি যদি নিজের ডিরেক্টরি কাঠামোটি পুনরায় সংগঠিত করে থাকেন এবং আপনার পোমগুলির মধ্যে একটি পুরানো পিতামাতার দিকে ইঙ্গিত করে যা জাভ্যাকটি আর কনফিগার করে না (কারণ সেই কনফিগারেশনটি মাঝারি স্তরে স্থানান্তরিত হয়েছিল)। এটি ঘটলে শীর্ষ স্তরের ডিফল্ট 1.5 হয় এবং দুর্ব্যবহারকারী নিম্ন স্তরের পোম এটি উত্তরাধিকার সূত্রে প্রাপ্ত হয়।

সুতরাং আপনি যখন এই ত্রুটিটি দেখেন তখন অন্য একটি জিনিস যাচাই করে দেখুন আপনার পম কাঠামোটি আপনার ডিরেক্টরি কাঠামোর সাথে সঠিকভাবে মেলে।


1

যদি মাভেন বিল্ডটি ঠিকঠাক কাজ করে তবে মাভেন এবং ইন্টেলিজ আইডিইএ প্রকল্পগুলির কাঠামো সিঙ্ক্রোনাইজ করার চেষ্টা করুন।

ইন ম্যাভেন টুল জানালা , রিফ্রেশ বোতামে ক্লিক করুন সতেজ করা। এই বোতামটি টিপে, IntelliJ IDEA মাভেন টুল উইন্ডোতে প্রকল্পের কাঠামোটিকে পার্স করে।

মনে রাখবেন যে আপনি ইএপি বিল্ড ব্যবহার করছেন যদি এটি মাভেন সিঙ্ক্রোনাইজেশন বৈশিষ্ট্যটি কখনও কখনও ভেঙে যেতে পারে তবে এটি সাহায্য করবে না।


0

নিশ্চিত হ'ল ডান অনুপাত নির্বাচন করা হয়েছে। ফাইল> প্রকল্পের কাঠামো

আপনার প্রকল্প নির্বাচন করুন এবং নির্ভরতা ট্যাবে নেভিগেট করুন। ড্রপডাউন থেকে ডান নির্ভরতা নির্বাচন করুন বা নতুন তৈরি করুন।


0

পূর্ববর্তী সমস্ত সমাধান যদি আপনার পক্ষে কাজ না করে (যা আমার ক্ষেত্রে ছিল), আপনি ইন্টেলিজ কনফিগারেশন ফাইলগুলি মুছতে পারেন:

  • project_directory / .idea / compiler.xml
  • project_directory / .idea / encodings.xml
  • project_directory / .idea / misc.xml
  • project_directory / .idea / modules.xml
  • project_directory / .idea / vcs.xml
  • project_directory / .idea / workspace.xml
  • প্রভৃতি

ইন্টেলিজ পরবর্তীতে নতুনকে পুনরুত্পাদন করবে। তবে, সাবধান থাকুন, এটি প্রজেক্টে তৈরি সমস্ত ইন্টিলিজ কনফিগারেশনও মুছে ফেলবে (যেমন: ডিবাগ মোডের কনফিগারেশন, ...)


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