Android Studio에서 오래된 Kotlin 런타임 경고


160

최신 Kotlin 플러그인을 다운로드하여 설치 한 후 Android Studio에서 Kotlin 런타임 경고 가 오래 되었다고 알려줍니다.

'kotlin-stdlib-1.1.2'라이브러리의 Kotlin 런타임 버전은 1.1.2이고 플러그인 버전은 1.1.2-release-Studio2.3-3입니다. 호환성 문제를 피하려면 런타임 라이브러리를 업데이트해야합니다.

런타임 업데이트 버튼 을 클릭 했지만 다른 메시지가 나타납니다.

Gradle 프로젝트의 자동 라이브러리 버전 업데이트는 현재 지원되지 않습니다. build.gradle을 수동으로 업데이트하십시오.

이 문제를 해결하는 방법?

답변:


142

프로젝트 레벨 build.gradle파일 에서 Kotlin 버전을 업데이트 할 수 있습니다 . 일반적인 방법으로 구성한 경우 맨 위에 다음 줄이 있어야합니다.

ext.kotlin_version = '1.1.2'

플러그인과 일치하는 버전으로 업그레이드하려면이 행을 다음과 같이 변경하십시오.

ext.kotlin_version = '1.1.2-3'

편집 (아래 질문에 응답) :

이 오류는 버전을 업그레이드해야한다는 것을 알려줍니다. 질문은 1.1.2-3예를 들어 1.1.2-release-Studio2.3-3.

Kotlin의 최신 버전을 찾는 가장 좋은 방법은 kotlinlang.org 로 이동하여 "최신 버전"을 찾는 것입니다. 첫 페이지에 있어야합니다.

이와 같이 버전 번호가 중요하지 않은 경우 수행 할 다른 작업은 버전이 호스팅되는 리포지토리를 확인하는 것입니다. 안드로이드의 경우, 아마도 jcenter에서 가져 와서 사용 가능한 모든 버전이 나열된 저장소 페이지를 찾을 수 있습니다.

여기 로 이동하여 파일이 실제로 호스팅되는 jcenter의 원시 maven 저장소를 탐색 하거나 mvnrepository 또는 mavencentral (후자의 원시 버전) 에서 Kotlin을 찾을 수도 있습니다 .


1
감사합니다, 이것은 오류에서 전혀 명확하지 않습니다. 어떻게해야합니까? 어떻게 알았습니까?
소년

훌륭한! 이 작업을 수행하는 방법을 찾을 수 없기 때문에이 경고를 잠시 무시했습니다.
Swindler

1
나와 같은 사람에게는 프로젝트에 "build.gradle"이 두 개 있습니다. 프로젝트 레벨 파일을 확인하십시오.
Ihab Shoully


139

당신에 (Project: [projectName]) build.gradle파일이 찾을 : ext.kotlin_version = 'x.x.x'당신의 코 틀린 플러그인의 현재 버전 XXX 교체합니다. 여기에 이미지 설명을 입력하십시오

Kotlin 플러그인의 현재 버전을 확인하려면 다음을 수행하십시오.

  1. 도구-> Kotlin-> Confugure Kotlin 플러그인 업데이트로 이동하십시오.

  2. "다시 확인"을 클릭하십시오. 잠시 후 Kotlin 플러그인 버전이 표시됩니다. (최신이 아닌 경우 Kotlin 플러그인이 업데이트됩니다.) 여기에 이미지 설명을 입력하십시오 여기에 이미지 설명을 입력하십시오

주의 : 또한 (Module: app) build.gradle파일을 점검 하고 사용하지 않는지 확인하십시오 .

compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:1.2.21" 

그러나

compile 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.2.40'

"... jre7 ..."-> "... jdk7 ..." 의 차이점에 유의하십시오 . 또한 "1.2.40"을 현재 Kotlin 플러그인 버전으로 바꾸십시오.


도구-> Kotlin-> Kotlin 업데이트 구성-> 업데이트 확인-> 설치를 수행하여 Koltin 플러그인을 업데이트하도록 도와 주셔서 감사합니다.
Shylendra Madda

이 답변을 받아 들여야합니다! 저는 Android Studio 3.1.3을 사용하고 있습니다. OP와 같은 문제가있었습니다
Ajay Kulkarni

1.3.31을 사용해야합니다
Raju yourPepe

11

그것은 (Android Studio 3.0.1에서) 참조 된 라이브러리의 종속성으로 인해 불만을 제기했습니다.

'org.jetbrains.kotlin : kotlin-stdlib : 1.1.3@jar'라이브러리의 Kotlin 런타임 버전은 1.1.3이며 플러그인 버전은 1.1.51-release-Studio3.0-1입니다.

그런 다음 모듈 수준에서 필요한 버전으로 빌드를 시행했습니다 build.gradle.

configurations.all() {
    resolutionStrategy.force 'org.jetbrains.kotlin:kotlin-stdlib:1.1.51'
}

결과는 다음과 같습니다.

./gradlew app:dependencies | grep kotlin
Download https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib/1.1.51/kotlin-stdlib-1.1.51.pom
 |    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3 -> 1.1.51
 ...

6

업데이트 할 두 가지 부분이 있습니다.

  1. 프로젝트의 kotlin 런타임
  2. kotlin 플러그인

Ivo Stoyanov의 답변은 안드로이드 스튜디오 메뉴를 사용하여이를 수행하는 방법을 보여줍니다. 오류 메시지가 표시되어 (kotlin 플러그인 업데이트 중) 혼자 시도했지만 여전히 kotlin 런타임에 대해 불평했습니다. 다른 답변 중 일부에서 알 수 있듯이 ext.kotlin_version의 줄을 프로젝트 빌드 gradle에 추가하여 프로젝트별로 업데이트 할 수 있습니다. 그러나이를 위해서는 kotlin 런타임 버전을 알아야합니다. 또는 아래에 표시된 것처럼 메뉴를 통해 안드로이드 스튜디오에서 사용 가능한 버전을 표시하고 가장 최신 버전을 선택할 수 있습니다.

1 단계

2 단계

3 단계

4 단계

그런 다음 android studio는 프로젝트 빌드 gradle에 적절한 줄을 추가합니다.


3

ext.kotlin_version을 '1.1.2-4'에서 ext.kotlin_version = '1.1.2-5'로 변경하면 문제가 해결되었습니다.


kotlin 플러그인이 자동 플러그인 업데이트를 지원하지 않습니까? 그것은 gradle을 수동으로 업데이트하는 것을 보여줍니다
Devil10

4
" 'kotlin-stdlib-1.1.2-5'라이브러리의 Kotlin 런타임 버전이 1.1.2-5 인 반면 플러그인 버전은 1.1.3-release-Studio2.3-1입니다. 런타임 라이브러리를 다음으로 업데이트해야합니다. 호환성 문제를 피하십시오. " .... 어떻게해야합니까?
Devil10

ext.kotlin_version을 '1.1.2-5'에서 ext.kotlin_version = '1.1.3-1'로 변경
Beatrice Lin

2

kotlin의 최신 버전은 1.2.41이며 이것을 사용하여 프로젝트를 동기화하십시오.

buildscript {
ext.kotlin_version = '1.2.41'
repositories {
    google()
    jcenter()
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.1.2'
    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
}
}

1
7 월 5 일 현재 1.2.51입니다. 최신 버전을 확인하는 쉬운 방법은 내 답변을 참조하십시오.
auspicious99

2

현재 2019년 3월 8일 현재 코 틀린 버전입니다'1.3.21'

아래에 build.gradle

buildscript {
   ext.kotlin_version = '1.3.21'
   repositories {
      google()
      jcenter()
   }
   dependencies {
      classpath 'com.android.tools.build:gradle:3.3.2'
      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
}

건배


1

이 문제는 android studio에서 팝업 된 kotlin 플러그인 버전을 업데이트 할 때 발생하지만 문제는 현재 Android Studio 버전에서 프로젝트 레벨 Build.gradle 파일 에있는 kotlin gradle 플러그인을 동적으로 변경할 수 없습니다 .

dependencies {
     classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.10"
}

이 문제를 해결하는 방법?

수동으로이 버전을 변경해야합니다 그래서, 당신은 그것을 찾을 수 있습니다 여기에


kotlin 런타임과 kotlin 플러그인이 다릅니다. kotlin 런타임을 업데이트하라는 오류 메시지에 대한 질문이었습니다.
auspicious99

1

나는 안드로이드 Studio와 IDEA에서 몇 번, 당신은의 버전을 설정하면 당신은 당신의 프로젝트 Gradle을 파일로 및 의존성에 가면 발견이 문제로 실행했습니다 kotlin-gradle-plugin$kotlin_version다음 경고 메시지는 당신이 필요로하는 무슨 버전을 알려줍니다 로 설정 ext.kotlin_version하십시오.

buildscript {
ext.kotlin_version = '1.2.40'
repositories {
    google()
    jcenter()
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.1.2'
    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
}
}

여기에 이미지 설명을 입력하십시오


1
buildscript {
    ext.kotlin_version = '1.2.50'
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'
        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
    }
}

1

이 두 줄의 코드를 검색하십시오.

ext.kotlin_version = '1.3.11'

classpath "org.jetbrains.kotlin : kotlin-gradle-plugin : $ kotlin_version"

$ kotlin_version 을 실제 값으로 대체 하십시오 (여기서는 1.3.11입니다)

클래스 경로 "org.jetbrains.kotlin : kotlin-gradle-plugin : 1.3.11"

이 후 IDE는 자동으로 업데이트 된 버전을 제안합니다

행복한 코딩 :)


0

코 틀린 최신 버전 :

buildscript {
    ext.kotlin_version = '1.2.41'

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'
        classpath 'com.google.gms:google-services:1.5.0-beta2'


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

7 월 5 일 현재 1.2.51입니다. 최신 버전을 확인하는 쉬운 방법은 내 답변을 참조하십시오.
auspicious99

0

조금 성가신 일이지만 스튜디오는 때때로 그렇게 행동합니다. 아래 단계로 문제를 해결할 수 있습니다.

이동

설정-> 빌드, 실행, 개발-> Gradle-> 기본 gradle 래퍼 사용 (권장)

이것을 로컬 사용으로 변경하고 기본값 사용으로 다시 변경하십시오. Studio는 설정 창을 닫은 후 gradle 업데이트에 대해 묻습니다.


0

내 안드로이드 스튜디오를 3.0.1에서 3.2.1로 업데이트 한 후에도 같은 문제에 직면했습니다.이 문제를 사용한 후에 내 문제가 해결되었습니다.

buildscript {
ext.kotlin_version = '1.2.51'
repositories {
    google()
    jcenter()
    mavenCentral()
    maven { url "https://jitpack.io" }
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.2.1'
    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
}

}


-1

Canary 채널의 최신 Android Studio 에서이 문제에 직면했습니다. Android Studio를 안정적인 버전으로 다운 그레이드하는 것도 고려할 수 있습니다.

Android Studio 3.0 RC1에서 발생했습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.