ত্রুটি: জাভা: অবৈধ উত্স প্রকাশ: 8 ইন্টেলিজে। এর মানে কী?


342

আমি ইন্টেলিজ আলটিমেট ১৩.১.৪ ব্যবহার করে কিছু কোড সংকলনের চেষ্টা করছি, তবে আমি নিম্নলিখিত ত্রুটিটি পেয়েছি এবং এর অর্থ কী তা সম্পর্কে আমার কোনও ধারণা নেই:

Information:Using javac 1.7.0_55 to compile java sources
Information:java: Errors occurred while compiling module 'Example'
Information:Compilation completed with 1 error and 0 warnings in 3 sec
Information:1 error
Information:0 warnings
Error:java: invalid source release: 8

আমার ধারণা এটি জাভা 8 বনাম জাভা 7 এর সাথে সম্পর্কিত কিছু, তবে বিশেষত আমার কোনও ধারণা নেই। আমি এই বার্তাটির জন্য গুগলকে চেষ্টা করেছি তবে তারা হয় সে সম্পর্কে কথা বলে javacবা target releaseতাই এটি ঠিক প্রয়োগ হয় বলে মনে হয় না।


2
জাভার কোন সংস্করণ ইনস্টল করা আছে? আইডিই সেটিংসে আপনি কোন জেআরই / জেডিকে ইন্টেলিজ দেখিয়েছেন?
ন্যানোফারাড

2
সম্ভবত প্রকল্প সেটিংস। আপনি যে জেডিকে ইঙ্গিত করছেন এবং যে ভাষা স্তরটি আপনি চেয়েছিলেন তা পরীক্ষা করুন।
duffymo

1
@ ডিফাইমো আপনি ঠিক বলেছেন, এটি ৮ টি নির্দেশ করছে। আমি বুঝতে পারি নি যে এটি একটি সেটিংস।
ডেভিড মনিকাকে

উত্তর:


767

জাভা 8 থেকে জাভা 6-তে কোনও প্রকল্প "ডাউনগ্রেডিং" করার সময় আমার একই সমস্যা ছিল reason কারণটি হ'ল এটি ইন্টেলিজিজের সমস্ত জায়গায় পরিবর্তিত হয়নি।

ইন্টেলিজজে ১৩.১.৪ এ এই ত্রুটিটি না পাওয়ার জন্য আমাকে নীচের জায়গাগুলিতে জাভা এবং এসডিকে সংস্করণ পরিবর্তন করতে হয়েছিল:

  • ফাইল -> প্রকল্পের কাঠামো -> প্রকল্প সেটিংস
  • ফাইল -> প্রকল্পের কাঠামো -> মডিউল সেটিংস -> ট্যাব: উত্স: ভাষা স্তর
  • ফাইল -> প্রকল্পের কাঠামো -> মডিউল সেটিংস -> ট্যাব: নির্ভরতা: মডিউল এসডিকে
  • ফাইল -> সেটিংস -> সংকলক -> জাভা সংকলক -> লক্ষ্য বাইকোড সংস্করণ

ফাইল> প্রকল্পের কাঠামো> প্রকল্পের স্ক্রিন শট

ফাইল> প্রকল্পের কাঠামো> মডিউল> উত্সের স্ক্রিন শট

ফাইল> প্রকল্পের কাঠামো> মডিউল> নির্ভরতা এর স্ক্রিন শট

ফাইল> সেটিংস / পছন্দসমূহ> সংকলক> জাভা সংকলক এর স্ক্রিন শট

সর্বশেষ বুলেটটি আমার ক্ষেত্রে আপডেট হয়নি। একবার এটি পরিবর্তন করার পরে ত্রুটিটি অদৃশ্য হয়ে গেল।


31
এক আমাকে হত্যা এই এক ছিল: File -> Settings -> Compiler -> Java Compiler -> Target bytecode version। ধন্যবাদ।
বিটোইউ

18
আমি এই সমস্যাটিও চালাচ্ছিলাম, তবে উপরেরগুলির কোনওটিরই কাজ হয়নি। আমি কি ছিল IntelliJ IDEA -> Preferences... -> Build, Execution, Deployment -> Build Tools -> Gradle -> Gradle JVM, কেস যে কেউ Gradle ব্যবহার থাকাকালীন এই সমস্যাটি মধ্যে চলছে।
এমিল

2
উত্স: আইডিইএ 15
মিয়া

4
এটি গ্রহণযোগ্য উত্তর হওয়া উচিত। ছোট্ট হেড-আপ হিসাবে, ইন্টেলিজ আইডিইএ 15-তে, পয়েন্ট 4 এ স্থানান্তরিত হয়েছে Preferences -> Build, Execution, Deployment -> Compiler -> Java Compiler
iusting

কিছু রান / ডিবাগ কনফিগারেশনে একটি জেআরই নির্বাচনও রয়েছে। উদাহরণস্বরূপ, টমক্যাট রান / ডিবাগ কনফিগারেশনের একটি "জেআরই" নির্বাচনকারী রয়েছে যা এই ত্রুটি সৃষ্টি করতে পারে।
jordanpg

16

আপনার pom.xmlপ্রথমটি পরীক্ষা করুন (যদি আপনার কাছে থাকে)
আপনার মডিউলটির JDKনির্ভরতা পরীক্ষা করুন । এটি নিশ্চিত হয়ে নিন যে এটি করার জন্য, প্রকল্পের কাঠামোটিতে যান -> এসডিকে আপনি যেখানে সংরক্ষণ করেছেন সেখানে পাথ যুক্ত করুন 1.8 ( আমার ক্ষেত্রে) এখনই পরিবর্তনগুলি প্রয়োগ করুন , প্রকল্পের কাঠামোটিতে যান -> মডিউলগুলি পরিবর্তনগুলি প্রয়োগ করতে মডিউল এসডিকে পরিবর্তন করুন1.8

jdk1.8.0_45.jdk


1.8

ভাল খবর! তুমি করেছ


6

গ্রেডল ব্যবহারকারীদের কাছে এই সমস্যা রয়েছে, যদি উপরের কিছু না দেয় তবে এটিই আমার সমস্যার সমাধান করে - আপনার বিল্ড.gradle ফাইলগুলিতে এই ঘোষণাটি প্রয়োগ করুন:

targetCompatibility = 1.6 //or 1.7;1.8 and so on
sourceCompatibility = 1.6 //or 1.7;1.8 and so on

সমস্যা সমাধান!



5

এটি সেট করে সহজেই কাটিয়ে উঠতে পারে Project Structure। জেডিকে সম্পর্কিত সংস্করণের জন্য আপনাকে কেবল সঠিক পথটি নির্বাচন করতে হবে। newনির্ভরতা ট্যাবে নির্বাচন করুন এবং পথটি চয়ন করুন। হয়ে গেল!

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


4

আপনি যদি গ্রেডলকে বিল্ড টুল হিসাবে ব্যবহার করেন এবং গ্রেডল টাস্ক কার্যকর করার সময় আপনি এই ত্রুটিটি পেয়ে থাকেন অর্থাত্ টমক্যাটরুন একই প্রশ্নের আমার অন্য উত্তরটি একবার দেখে নিন

জাভ্যাক: অবৈধ লক্ষ্য প্রকাশ: 1.8


ধন্যবাদ! উপরের উত্তরগুলি না দেওয়ার পরে এটি আমার সমস্যার সমাধান করেছে।
ছাজলাবস

2

আন্দ্রেস লন্ডগ্রেনের উত্তর কাজ করেছে এবং আমি আমার অ্যাপ্লিকেশনটি সংকলন করতে এবং চালাতে সক্ষম হয়েছি।

যাইহোক, যখন আমি প্রকল্পের সম্পর্কিত JUnit পরীক্ষা চালানোর চেষ্টা করলাম তখন আমি একই ত্রুটি পেয়েছি। চলমান

gradle -version

উইন্ডোজ কমান্ড প্রম্পট থেকে দেখানো হয়েছে যে গ্রেডেল এখনও ভুল জেডিকে তুলে নিচ্ছে। এটি ঠিক করার জন্য আমাকে JAVA_HOMEপরিবেশের পরিবর্তনশীলটি সঠিক jdk এ নির্দেশ করতে হবে এবং IntelliJ পুনরায় চালু করতে হবে।


1

আমি উপরে বর্ণিত সমস্ত প্রকল্পের সংস্করণ, মডিউল সংস্করণ, প্রজেক্ট বাইটকোড সংস্করণ, টার্গেট বাইটকোড সংস্করণ সেটিংসগুলিতে যাচাই করেছি IntelliJ Idea, তবে আমার স্ক্র্যাচগুলির মতো সমস্ত একই ছিল।

আমি এই ত্রুটির সম্মুখীন Error:java: invalid source release: 1.8 মধ্যে IntelliJ Idea 2017.2.6কারণ আমি নির্ভরতা সংস্করণ আপগ্রেড Mavenপম ফাইল যা (নির্ভরতা) JDK 1.8 অ্যাপ্লিকেশনের জন্য বিল্ড করার কথা ছিলো এবং আমি ও ম্যাভেন কম্পাইলার উৎস এবং লক্ষ্য JDK 1.7 সঙ্গে আমার আবেদন বিল্ডিং করা হয়।

অতএব আমি আবার নির্ভরতা সংস্করণটিকে Mavenপমের প্রথম সংস্করণে ডাউনগ্রেড করেছি এবং ত্রুটিটি প্রকল্প পুনর্নির্মাণ মডিউল 'xyz_project' এর পরে চলে গেছে।


0

গ্রিল ব্যবহারকারীদের জন্য, আপনার বিল্ডকনফিগ.groovy ফাইলে এই ঘোষণাগুলি প্রয়োগ করুন:

grails.project.target.level = 1.6 //or 1.7;1.8 and so on
grails.project.source.level = 1.6 //or 1.7;1.8 and so on

0

আপনাকে প্রকল্পটি ওপেন মডিউল সেটিংসে ক্লিক করতে হবে এবং আপনার জেডিকের পথ পরিবর্তন করতে হবে, যদি পিওএম ফাইলটিতে আপনি জেডকে ১.৮ ব্যবহার করেন, সঠিক পথের সাহায্যে জেডিকে ১.৮ কনফিগার করুন।



0

আমি এখানে উল্লিখিত সমস্ত পদক্ষেপগুলি চেষ্টা করে দেখেছি https://stackoverflow.com/a/26009627/2058104 , তবে চতুর্থ পয়েন্টটি এখন পরিবর্তিত হয়েছে। আপনার যেতে হবে পছন্দগুলি -> বিল্ড, এক্সিকিউশন, স্থাপনা -> সংকলক -> জাভা সংকলক যেতে হবে

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

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

অন্যদিকে, প্রকল্পটি পরিষ্কার করুন এবং আবার চালনার চেষ্টা করুন।

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