कोटलिन त्रुटि: org.jetbrains.kotlin नहीं मिल सका: kotlin-stdlib-jre7: 1.0.7


101

मैंने अपने ऐप में कोटलिन प्लगइन स्थापित किया (v। V1.1.1-release-Studio2.2-1) और फिर "प्रोजेक्ट में कॉन्फ़िगर करें कोटलिन" का चयन किया। मैंने 1.0.7 का संकलक और रनटाइम संस्करण चुना। कोटलिन ने मेरी ग्रेडल फ़ाइलों को अपडेट किया। अब जब मैं निर्माण करने की कोशिश करता हूं तो मुझे मिलता है:

त्रुटि: प्रोजेक्ट ': ऐप' को कॉन्फ़िगर करने में एक समस्या हुई। कॉन्फ़िगरेशन के लिए सभी निर्भरताएँ हल नहीं कर सका ': ऐप: _debugApkCopy'। Org.jetbrains.kotlin नहीं मिल सका: kotlin-stdlib-jre7: 1.0.7। इसके द्वारा आवश्यक:

MyApplication: एप्लिकेशन: अनिर्दिष्ट

मुझे यकीन नहीं है कि मैं यहाँ क्या याद कर रहा हूँ।


2
अपना प्रोजेक्ट स्तर पोस्ट करेंgradle
पटेल पिंकल

यह है कि आप एंड्रॉयड के लिए कोटलिन
IgorGanapolsky

जवाबों:


160

बदलने के

implementation "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"

साथ में

implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"

चूंकि jre वाला संस्करण निरपेक्ष है, बस प्रोजेक्ट को बदलें और सिंक करें

आधिकारिक दस्तावेज यहां लिंक @ ROMANARMY के लिए धन्यवाद

हैप्पी कोडिंग :)


1
डॉक्स में jdk और jre के बारे में कुछ उपयोगी जानकारी ।
R0MANARMY 5

मेरा मानना ​​है कि एक दिन एंड्रॉइड टीम चीजों को थोड़ा आसान बना देगी न कि सिर्फ थोड़ा या कम से कम वे चेंगलॉग में बड़े बदलावों को बोल्ड करने के बजाए इसे वेबसाइट में गहराई से दफनाने के लिए लिखेंगे :))
फरीद

12
मुझे अंतर देखने के लिए घूरने में पूरा एक मिनट लग गया jreऔर jdkमुझे बूढ़ा होना पड़ा।
जेम्स वांग

32

प्रोजेक्ट स्तर में build.gradleकेवल इस संस्करण का उपयोग करें

ext.kotlin_version = '1.3.31'

अन्य संस्करण निकालें

यह केवल एंड्रॉइड स्टूडियो के नवीनतम संस्करण 3.4 के साथ काम करेगा

अद्यतन: किसी त्रुटि से बचने के लिए नवीनतम एंड्रॉइड स्टूडियो के साथ कोटलिन के नवीनतम संस्करण का उपयोग करने का प्रयास करें।


22
एक उत्तर जो विवरण के बिना उपयोग करने के लिए एक जादू संस्करण को निर्दिष्ट करता है, यह सब उपयोगी नहीं है और समय के साथ कम सहायक भी हो जाता है। क्या आप निम्न संस्करण से अपग्रेड करने का सुझाव दे रहे हैं? या उच्च संस्करण से अपग्रेड करना क्योंकि उच्च संस्करण में बग है?
डॉन हैच

3
@DonHatch यह जवाब मार्च में एंड्रॉइड स्टूडियो 2.2 के लिए दिया गया था जो प्रश्न में उपरोक्त त्रुटि का उल्लेख कर रहा था। यह एंड्रॉइड स्टूडियो 3.0 या इसके बाद के संस्करण के लिए नहीं है।
पटेल पिंकल

@ 0xalihn नीचे दिए गए उत्तर में मैजिक वर्जन नंबर के बिना एक सही हल है
लो

@PatelPinkal आप नवीनतम Android स्टूडियो संस्करण के लिए अपना जवाब अपडेट कर सकते हैं।
Arbaz.in

1
मैंने एंड्रॉइड स्टूडियो के नवीनतम संस्करण के अनुसार अपडेट किया उत्तर
Arbaz.in

21

के विभाजन kotlin-stdlibमें kotlin-stdlib-jre7और kotlin-stdlib-jre8केवल Kotlin 1.1 के साथ पेश किया गया था, है यही कारण है कि निर्भरता हल नहीं किया जा सकता है, पैकेज संस्करण बस मौजूद नहीं है।

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


3
समझाने के लिए धन्यवाद। कई उत्तर कहते हैं कि बिना स्पष्टीकरण के 1.1.1 का उपयोग करें, जिससे भविष्य में उत्तर तेजी से बेकार हो जाएंगे।
डॉन हैच

12

"बिल्ड.ग्रेडल" फ़ाइल में, वर्तमान कोटलिन संस्करण को बदलें जो लाइन और प्रेस सिंक को दबाए:

ext.kotlin_version = '1.1.1'

/// यह जैसा दिखेगा:

// शीर्ष-स्तरीय बिल्ड फ़ाइल जहां आप सभी उप-परियोजनाओं / मॉड्यूल के लिए कॉन्फ़िगरेशन विकल्प सामान्य जोड़ सकते हैं।

buildscript {
    ext.kotlin_version = '1.1.1'
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

8

कोटलिन 1.1.2 के साथ शुरू, समूह के साथ निर्भरता org.jetbrains.kotlinडिफ़ॉल्ट रूप से लागू प्लगइन से लिए गए संस्करण के साथ हल की जाती है। आप पूर्ण निर्भरता संकेतन का उपयोग करके मैन्युअल रूप से संस्करण प्रदान कर सकते हैं:

compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"

यदि आप JDK 7 या JDK 8 को लक्षित कर रहे हैं, तो आप कोटलिन मानक लाइब्रेरी के विस्तारित संस्करणों का उपयोग कर सकते हैं, जिसमें नए JDK संस्करणों में जोड़े गए API के अतिरिक्त एक्सटेंशन फ़ंक्शन शामिल हैं। कोटलिन-स्टडलिब के बजाय, निम्न निर्भरताओं में से एक का उपयोग करें:

compile "org.jetbrains.kotlin:kotlin-stdlib-jdk7"
compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8"

7

एक नया समाधान यदि आप एंड्रॉइड स्टूडियो 3.2 का उपयोग करते हैं, तो मैंने इस मुद्दे को प्रोजेक्ट के निर्माण के लिए जोड़ा mavenCentral () द्वारा हल किया:

buildscript {
    ext.kotlin_version = '1.3.0'
    repositories {
        mavenCentral()
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.1'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

    }
}

allprojects {
    repositories {
        mavenCentral()
        google()
        jcenter()
    }
}

आपको इस आदेश के रूप में लाइन को जोड़ना चाहिए, श्रेय इस उत्तर के लिए है


4
buildscript {
    **ext.kotlin_version = '1.1.1'**  //Add this line
    repositories {
        **jcenter()**                 //Add this line
        google()
    }
    dependencies {
//        classpath 'com.android.tools.build:gradle:3.0.1'
        classpath 'com.android.tools.build:gradle:3.1.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        **jcenter()**                 //Add this line
        google()
        maven { url "https://jitpack.io" }
    }
}

आप इस बारे में विस्तार से बता सकते हैं कि इससे मिहेल सालारी के उत्तर में क्या सुधार होता है, जिसके आधार पर यह लगता है।
नेमो

3

यदि आप एंड्रॉइड स्टूडियो 3.2 या उससे ऊपर का उपयोग कर रहे हैं, तो प्रोजेक्ट को बिल्ड करने के लिए google () और jcenter () को जोड़कर समस्या हल हो जाएगी:

repositories {
        google()
        jcenter()
}

2

मेरे लिए यह काम कर रहा है: ग्रैडल 4.8.1 का उपयोग करना

buildscript {
    ext.kotlin_version = '1.1.1' 
repositories {
    jcenter()
    google()
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.1.0'}
}
allprojects {
    repositories {
        mavenLocal()
        jcenter()
        google()
        maven {
            url "$rootDir/../node_modules/react-native/android"
        }
    maven {
            url 'https://dl.bintray.com/kotlin/kotlin-dev/'
    }
  }
}   

2

मैंने ऑफ़लाइन कार्य विकल्प के चयन को रद्द करते हुए इस समस्या को हल कर लिया हैSettings

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


1
  1. कृपया नीचे के मार्ग में अपने कोटलिन के वर्तमान संस्करण की जाँच करें,

    C: \ Program Files \ Android \ Android Studio \ gradle \ m2repository \ org \ jetbrains \ kotlin \ kotlin-stdlib \ 1.0.5

(1.0.5)परियोजना के स्तर के ग्रेड फ़ाइल में उस संस्करण में परिवर्तन ।

आप अपने उपरोक्त पथ में देख सकते हैं कि किसी भी जावा का उल्लेख नहीं किया गया है - jre versionइसलिए नीचे दिए गए अनुसार अपने ऐप स्तर के ग्रेड फ़ाइल में निकालें,

compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"

1

build.gradle (परियोजना)

buildScript {
    ...
    dependencies {
        ...
        classpath 'com.android.tools.build:gradle:4.0.0-rc01'
    }
} 

Gradle / आवरण / gradle-wrapper.properties

...
distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip

कुछ पुस्तकालयों को अद्यतन प्रवणता की आवश्यकता होती है । जैसे कि:

androidTestImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutines"

जीएल


0

मामले में (सकर्मक) निर्भरता अभी भी jreकोटलिन पुस्तकालय के संस्करण का उपयोग करता है , तो आप jdkएक संकल्प रणनीति की मदद से संस्करण के उपयोग को मजबूर कर सकते हैं :

configurations.all {
    resolutionStrategy {
        eachDependency { DependencyResolveDetails details ->
            details.requested.with {
                if (group == "org.jetbrains.kotlin" && name.startsWith("kotlin-stdlib-jre")) {
                    details.useTarget(group: group, name: name.replace("jre", "jdk"), version: version)
                    details.because("Force use of 'kotlin-stdlib-jdk' in favor of deprecated 'kotlin-stdlib-jre'.")
                }
            }
        }
    }
}

0

सरल कदम:

  1. फ़ाइल> प्रोजेक्ट संरचना पर क्लिक करें

  2. निर्भरता पर क्लिक करें> ढूँढें और org.jetbrains.kotlin पर क्लिक करें: kotlin-stdlib-jdk7: 1.3.21 (या जो भी आपका वर्तमान संस्करण है)

  3. विवरण> अद्यतन अनुभाग के तहत, [अद्यतन चर] [निर्भरता अपडेट करें] पर क्लिक करें

  4. ओके पर क्लिक करें

सादर


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