কোটলিন ইন্টেলিজজে অমীমাংসিত রেফারেন্স


93

আমি কোটলিন শিখতে টিউটোরিয়াল দিয়ে শুরু করেছি W IntelliJযখন আমি উদাহরণটি চালানোর চেষ্টা করলাম

fun main(args: Array<String>) {
 println("lol")
}

এই বার্তাটি দিয়ে মৃত্যুদন্ড স্থগিত করা হয়েছে Error:(5, 5) Kotlin: Unresolved reference: println আমি প্রথমবারের মতো Javaইন্টেলিজ ব্যবহার করছি either আমি কখনও কোনও প্রকল্পে কাজ করি নি Aআমাকে কিছু মিস করছি?

সম্পাদনা: আমি অন্যান্য প্রশ্নটি ইতিমধ্যে দেখেছি answer উত্তরটি আমার পরিস্থিতির জন্য বৈধ নয়।


সংস্করণ ইন্টেলিজ আইডিইএ? কোটলিন প্লাগইনের কোন সংস্করণ ইনস্টল করা আছে?
ডি

কোটলিন রানটাইম সংলাপে আপনি কোন বিকল্পটি নির্বাচন করেছেন?
ইয়োল

আমি গতকালই এটি ইনস্টল করেছি .আইডিএ 14.1 এবং সর্বশেষতম কোটলিনও ছিল
অ্যানি-মাউস

হ্যাঁ আমি গ্র্যাডল এবং নেটবিন ব্যবহার করে "হ্যালো ওয়ার্ল্ড" উদাহরণে এটিও পাচ্ছি। গ্রেড বিল্ড কাজ করে। নেটবিনের সাথেও আমি প্লাগ ইন সমস্যায় দেখছি। হায়রে সেখানে প্লাগ ইন Netbeans এর জন্য কোনো সাম্প্রতিক আপডেট
হবে

উত্তর:


92

আপনার ইন্টেলিজ আইডিইএ প্লাগইন এবং কোটলিন রানটাইম / সংকলক যা আপনি প্রকল্পে ব্যবহার করেন তা মিলানোর প্রয়োজন। উদাহরণস্বরূপ, যদি আইডিই প্লাগইনটি বিটা 1 হয় তবে আপনার গ্রেডল / মাভেন প্রজেক্টটি এম 12 ব্যবহার করে আপনার বর্ণনার মতো সমস্যাগুলি আসবে। সুতরাং যে সবকিছু লাইন আপ চেক।

আপনার যদি এখনও কিছু সমস্যা থাকে তবে কিছু পুরানো প্লাগইন সহ আপনার ইন্টেলিজ আইডিইএ (ফাইল মেনু, সাফ ক্যাশে এবং পুনঃসূচনা, পুনরায় চালু করার বিকল্পটি নির্বাচন করুন) এর ক্যাশেগুলি সাফ করা দরকার।


ক্লিয়ারিং ক্যাশে, অ্যান্ড্রয়েড স্টুডিও এবং কোটলিন প্লাগইন আপডেট করার সংমিশ্রণটি এটি আমার জন্য স্থির করে। আপনাকে ধন্যবাদ
ব্যবহারকারীর 405990

হাই, আবার কিছু সময় নিয়ে স্টাফ এবং কিছুটা কোটলিন গুগল-আইং বিবেচনা করার সাথে - আমি মনে করি না যে কারণটি এখানে প্রতি সেগ্রেইন প্লাগইন-এস- এ রয়েছেprintln হয় kotlin.io প্যাকেজ। কোটলিন-স্টেডলিব জেআর "কোটলিন.আইও" আছে। সুতরাং পৃষ্ঠতলে কোনও সমস্যা নেই। আমি স্পষ্টভাবে kotlin.io অন্তর্ভুক্ত * - ফলাফল।: Unresolved reference: io। জেআর সংরক্ষণাগার হিসাবে, রেফারেন্স রেজোলিউশনটি কিন্ডারগার্টেন স্টাফ হওয়া উচিত । তাহলে কি হয়েছে! ??
হবে

আমি ফিরে এসেছি ... নেটবিনের লোকেরা এটিকে 'ঠিক' করতেও পারে - নেটবিন ব্যবহারকারী ক্যাশে ফেলে দিন। সহায়তা / সম্পর্কে বক্সে ক্লিক করে আপনি নেটবিন্স ক্যাশে ডিরেক্টরিটির অবস্থান দেখতে পারেন। পরিষ্কার - নেটবিয়ানদের থামান - ক্যাশ ফেলে দিন - নেটবিয়ান পুনরায় আরম্ভ করুন - পুনর্নির্মাণ করুন! Volia
হবে

আপনি আপনার Gradle বিল্ড ফাইলে এই সমস্যাটি দেখেন তবে শুধুমাত্র কিন্তু প্রকল্পের সোর্স ফাইল, এই সাহায্য করতে পারে: discuss.kotlinlang.org/t/...
AlexO

25

যে কেউ এই এবং জুড়ে হোঁচট খায় তাহলে পক্ষই Invalidate Cache বা Update Kotlin's Versionকাজ:

1) প্রথমে নিশ্চিত হয়ে নিন যে আপনি এটি আইডিইর বাইরে থেকে তৈরি করতে পারবেন। আপনি যদি ব্যবহার gradleকরেন তবে উদাহরণস্বরূপ:

gradle clean build

যদি সবকিছু ঠিকঠাক হয় তবে আপনার পরিবেশের সাথে কাজ করা ভাল Kotlin

2) আইডিই বিল্ড ঠিক করতে, নিম্নলিখিত চেষ্টা করুন :

প্রকল্পের কাঠামো -> Mod মডিউল নির্বাচন করুন} -> কোটলিন -> ফিক্স

যেমনটি এখানে জেটব্রেনের সদস্য পরামর্শ দিয়েছেন: https://discuss.kotlinlang.org/t/intellij-kotlin-project-screw-up/597


13
আমি অ্যান্ড্রয়েড স্টুডিও ব্যবহার করছি। আমার প্রকল্প কাঠামো> মডিউলগুলিতে আমার কাছে "কোটলিন" বিকল্প নেই। কোন ধারনা?
স্বায়ত্তশাসিত

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

23

আমার ক্ষেত্রে এটি একটি ভুল কনফিগার্ড করা ইন্টেলিজ ঘটনা ছিল।

প্রকল্পের কাঠামো -> এসডিকে -> আবার জাভা এসডিকে সরান এবং যুক্ত করুন


ওপেনজেডিকে অপসারণ এবং ওরাকল জেডিকে ইনস্টল করার পরে এটি আমার সমস্যা ছিল। ধন্যবাদ
প্যাট্রিক স্টাস

এটি আমার ইন্টেলিজজে 2019.3 এবং ওপেনজেডিকে ১১-তে সমাধান করেছে I
z11i

10

এই ইস্যু মধ্যে দৌড়ে। আমার বিল্ড.গ্রেডে আমাকে নিম্নলিখিতগুলি যুক্ত করতে হয়েছিল:

apply plugin: 'kotlin-android'


8

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

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

আমার প্রকল্প (এটি লেখার সময়) ইন্টেলিজজে (ইন্টেলিজ আইডিইএ 2018.2.5 (চূড়ান্ত সংস্করণ) বিল্ড # আইইউ-182.4892.20, 16 ই অক্টোবর, 2018 এ নির্মিত) একটি গ্রেড 4.10.2 কোটলিন 1.3 প্রকল্প)

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

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

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


আমারও একই সমস্যা ছিল, তবে আমার মডিউলগুলির মডিউলগুলিও সঠিক টার্গেট জেভিএম সংস্করণে পরিবর্তন করতে হয়েছিল
জেক ওয়ালশ

4

আমার জন্য এটি প্রকল্পের কাঠামোগত গ্র্যাডল লাইব্রেরিগুলি হারিয়ে যাওয়ার কারণে হয়েছিল।

কেবল বিল্ড.gradle এ যুক্ত করুন: apply plugin: 'idea'

এবং তারপরে চালান: $ gradle idea

এর পরে গ্রেডাল পুনর্নির্মাণ নির্ভরতা গ্রন্থাগারগুলি এবং উল্লেখগুলি স্বীকৃত হয়!


গ্রেড গ্রেড লাইব্রেরিগুলি হারিয়ে যাওয়ার কারণে এই একটিকে সহায়তা করা এবং কাজ করা হয়
কৌশিক বুর্কুলে

3

একক কোটলিন প্রকল্পগুলির একটি সম্ভাব্য সমাধান হ'ল কোটলিন স্ট্যান্ডার্ড লাইবগুলি মূল প্রকল্পের অভ্যন্তরে অন্তর্ভুক্ত করা।

ইন্টেলিজ আইডিএতে এটি করতে:

  • Ctrl + Shift + A টিপুন (অনুসন্ধানের ক্রিয়া বা বিকল্পগুলি)
  • "প্রকল্পে কোটলিন কনফিগার করুন" টাইপ করুন এবং এটি আপনার জন্য স্ট্যান্ডার্ড libs অন্তর্ভুক্ত করুন

3

আমার সমস্যাটি নিম্নলিখিত kotlinহিসাবে যুক্ত করে সমাধান করা হয়েছিল

উপস্থাপনা. gradle (app.gradle)

apply plugin: 'com.android.application'

apply plugin: 'kotlin-android' // here

apply plugin: 'kotlin-android-extensions' // and here

android {
    ...
}

dependencies {
    ...
}

ডোমেন.gradle (খাঁটি কোটলিন)

আমার ত্রুটিটি এখানে ফেলে দেওয়া হয়েছিল, কারণ অ্যান্ড্রয়েড স্টুডিও আমার ডোমেন মডিউলটিকে খাঁটি জাভা মডিউল হিসাবে তৈরি করেছে এবং জাভা হিসাবে প্লাগইন প্রয়োগ করেছে, এবং আমি এটিকে আমার উপস্থাপনা মডিউলে ব্যবহার করেছি যা অ্যান্ড্রয়েড / কোটলিন মডিউল is

অ্যান্ড্রয়েড স্টুডিও প্যাকেজের পথ সন্ধান করে এবং আমদানি করে তবে অসম্পূর্ণতা বিল্ডটিকে অনুমতি দেয় না।

কেবল সরান apply plugin: 'java'এবং অনুসরণ হিসাবে কোটলিনে swith

apply plugin: 'kotlin' // here is

dependencies {
    ...
}

...

ডেটা.gradle

apply plugin: 'com.android.library'

apply plugin: 'kotlin-android' // here

apply plugin: 'kotlin-android-extensions' // and here 

android {
    ...
}

dependencies {
    ..
}

আমি মনে করি এটি সহায়ক হবে


1

আইডিইএ 14.1.5, কোটলিন v.1.0.0-বিটা -1038-আইজে 141-17 এর সাথে একই ছিল।
নতুন প্রকল্প তৈরি করার সময় কোটলিন তার নিজস্ব তালিকা এন্ট্রি পেয়েছে (জাভা এর মতো), তবে একমাত্র কার্যকরী কনফিগারেশনটি ছিল:

নতুন | প্রকল্প | জাভা | "কোটলিন (জাভা)" (আপনার প্রজেক্ট এসডিকেও কনফিগার করা আছে তা নিশ্চিত
করুন ) লাইব্রেরি ব্যবহার করুন: তৈরি করুন, "অনুলিপি করুন: lib"।


1

আমি সবকিছু চেষ্টা করেছি: পরিষ্কার বিল্ড ফোল্ডার, চালান gradle clean build , এএস অকার্যেট ক্যাশে (এক্স 2) , কোটলিন প্লাগইন পুনরায় ইনস্টল করুন, পিসি পুনরায় চালু করুন।

কিন্তু শেষ পর্যন্ত এটি করার পরেও এটি কার্যকর হয়নি, তবে build.gradleএই লাইনের প্রকল্প থেকে অপসারণ : apply plugin: 'kotlin-android-extensions'গ্রেড সিঙ্ক এবং তারপরে পুনরায় যুক্ত করার কাজ করেছে


1

আমিও এই ত্রুটিটি পেয়ে যাচ্ছিলাম, তবে আমি নীচের ধারণাটি ব্যবহার করে এটি সমাধান করেছি।

  1. আপনার ইন্টেলিজ ধারণা সম্প্রদায় সংস্করণটি পুনরায় চালু করুন।
  2. এর পরে, জাভাটির জন্য কনফিগারেশন সেট করতে ডানদিকে যান।

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

  1. সমস্ত মডিউল জন্য কনফিগারেশন সেটিংস চয়ন করুন। তারপরে কোডটি আবার চালান। এটা কাজ করবে।

জাভাটি সঠিকভাবে কনফিগার না করার কারণে এই ত্রুটিটি এসেছে।


4
আমি দুঃখিত তবে ২ টি পরিষ্কার নয়। আমি "ডান হাতের কোণে" খুঁজে
পাইনি

1

কখনও কখনও এটি ঘটতে পারে কারণ আপনি আপনার আইডিতে প্লাগইন সহ গ্রেডলে কোটলিন প্লাগইন এর বেমানান সংস্করণ সহ একটি প্রকল্প ব্যবহার করার চেষ্টা করছেন। Org.jetbrains.kotlin.jvm এবং build.gradle- এ অন্য কোটলিন প্লাগইনগুলির সংস্করণ এবং আপনার আইডিইতে ইনস্টল করা কোটলিন প্লাগইনের সংস্করণ পরীক্ষা করে দেখুন এবং এটিকে অনুরূপ করার চেষ্টা করুন:

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

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


0

আমার আজ হয়েছে।

আমার সমস্যাটি হ'ল আমার কাছে প্রচুর ট্যাবগুলি খোলা ছিল (আমি জানতাম না যে তারা খোলা ছিল) সেগুলিতে সোর্স কোড রয়েছে।

আপনি যদি সমস্ত ট্যাবগুলি বন্ধ করে দেন, সম্ভবত আপনি নির্ভরশীলতাগুলি সঠিকভাবে ইনডেক্স করার জন্য ইন্টেলিজকে আনকফিউজ করবেন


আসলে এটি মোটামুটি বোঝায়, আপনি কেন -ngt স্কোর পাওয়ার কারণ আপনি এটি ভালভাবে ব্যাখ্যা করেন নি। আইডিইতে যদি কারওটির দুটি প্রকল্প খোলা থাকে তবে একটি গ্র্যাডলের সাথে এবং একটি মাভেনের সাথে বলুন; প্রকল্পের মধ্যে একটি চালানো অমীমাংসিত উল্লেখ হতে পারে to
এইচএ এস

0

ক্যাশেগুলিকে অবৈধ করা এবং অ্যান্ড্রয়েড স্টুডিওতে কোটলিন প্লাগইন আপডেট করা আমার পক্ষে কৌশলটি করেছে।


0

আমার এই সমস্যাটি ছিল কারণ আমি একাধিক প্ল্যাটফর্ম লাইব্রেরি কনফিগারেশন স্থাপন করার চেষ্টা করছিলাম।

আমি "বিল্ড.gradle" ফাইল থেকে তাদের নির্ভরতা সহ সমস্ত উত্স সেট মুছে ফেলেছি কিন্তু "সাধারণ" উত্স সেট রেখেছি।

নেটিভ ঠিকঠাক কাজ করছিল তবে জেভিএম তৈরি করতে সক্ষম হয় নি এবং আপনার ত্রুটিটি দেখিয়েছে।

শেষ পর্যন্ত, সমাধানটি ছিল JVM এর উত্স সেটটি মুছে ফেলা না হয় এটির নির্ভরতাও নয়


0

আরেকটি জিনিস আমি যুক্ত করতে চাই তা হল আপনার ভিউ -> সরঞ্জাম উইন্ডোজ -> গ্রেডল নির্বাচন করা উচিত ব্যবহার করে প্রকল্পটি চালানোর আগে ।

গ্রেডল ব্যবহার করে যদি প্রকল্পটি সাধারণভাবে তৈরি হয় এবং চালিত হয় তবে ইন্টেলিজ ব্যবহার করে তা হয় না, তবে এটি বিষয়টি সমাধান করতে পারে।


0

আমার এই সমস্যাটি ছিল কারণ লিন্টারটি মুদ্রণ করছিল যে আমার অবজেক্টটি একটি উদাহরণ Fooযেখানে সংকলকটি এটির ধরণ নির্ধারণ করতে পারে না এবং এটি একটি Anyবস্তু হিসাবে বিবেচনা করতে পারে না (এটি আমার ক্ষেত্রে আরও জটিল ছিল, নীচের কোডে লিটার শো ত্রুটি ছিল তবে ধারণা এখানে):

    class Foo {
        val bar: Int = 0
    }

    fun test(): Any {
        return Foo()
    }

    val foo = test()
    foo.bar // <-- Linter consider that foo is an Instance of Foo but not the compiler because it's an Any object so it show the error at compilation.

এটি ঠিক করতে আমাকে আমার বস্তুটি ফেলে দিতে হয়েছিল:

val foo = test() as Foo


-1

কখনও কখনও অনুরূপ পরিস্থিতিতে (আপনার সমস্যাটি খুব সাধারণ বলে আমি মনে করি এটি আপনার সমস্যা নয়) কোটলিন ফাইল প্যাকেজটি পরীক্ষা করা ভাল।

যদি আপনার একই প্যাকেজের মধ্যে কোটলিন ফাইল থাকে এবং কিছু ক্লাস রাখেন এবং প্যাকেজ ঘোষণার হাতছাড়া হয় তবে এটি ইন্টেলিজের অভ্যন্তরে দেখায় যে আপনার একই প্যাকেজে ক্লাস রয়েছে তবে প্যাকেজের সংজ্ঞা ছাড়াই আপনাকে দেখায়:

ত্রুটি: (5, 5) কোটলিন: অমীমাংসিত রেফারেন্স: ...


-1

সহজ সমাধান:

সরঞ্জাম-> কোটলিন-> প্রকল্পে কোটিন কনফিগার করুন

উপভোট করুন যদি ইউজফুল পাওয়া যায়।


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