Aviso desatualizado do tempo de execução do Kotlin no Android Studio

160

Depois de baixar e instalar o mais recente plug-in do Kotlin, recebi um aviso de tempo de execução desatualizado do Kotlin do Android Studio que dizia:

Sua versão do tempo de execução Kotlin na biblioteca 'kotlin-stdlib-1.1.2' é 1.1.2, enquanto a versão do plugin é 1.1.2-release-Studio2.3-3. A biblioteca de tempo de execução deve ser atualizada para evitar problemas de compatibilidade.

Tentei clicar no botão Atualizar tempo de execução , mas obtendo outra mensagem:

Atualmente, a atualização automática da versão da biblioteca para projetos Gradle não é suportada. Atualize seu build.gradle manualmente.

Como resolver este problema?

Arsenius
fonte

Respostas:

142

Você pode atualizar sua versão do Kotlin no build.gradlearquivo no nível do projeto . Se você o tiver configurado da maneira usual, deverá ter a seguinte linha na parte superior:

ext.kotlin_version = '1.1.2'

Para atualizar para a versão correspondente ao seu plug-in, basta alterar esta linha para:

ext.kotlin_version = '1.1.2-3'

Editar (para responder a uma pergunta abaixo):

O erro informa que você precisa atualizar sua versão. A questão é onde descobrir o que você deve colocar em 1.1.2-3vez de dizer, por exemplo 1.1.2-release-Studio2.3-3,.

A melhor maneira de descobrir a versão mais recente do Kotlin é acessando o kotlinlang.org e procurando "Versão mais recente". Deveria estar ali na primeira página.

Outra coisa a fazer se o número da versão não for trivial como esse é verificar os repositórios em que as versões estão hospedadas. No caso do Android, você provavelmente o encontrará no jcenter, para o qual você pode encontrar a página do repositório , que possui todas as versões disponíveis listadas.

Você também pode navegar no repositório raw maven do jcenter, onde os arquivos estão realmente hospedados, acessando aqui ou procurar o Kotlin no mvnrepository ou no mavencentral (versão bruta do último aqui ).

zsmb13
fonte
1
Obrigado, isso não está claro no erro. Como posso derivar o que fazer, como você descobriu?
Boy
Brilhante! Estou ignorando esse aviso há algum tempo agora, porque não consegui descobrir como fazer isso.
21717 Swindler
1
Para alguém como eu, há dois "build.gradle" em seu projeto, verifique se o arquivo no nível do projeto foi verificado.
Ihab Shoully
139

No seu (Project: [projectName]) build.gradlearquivo, encontre o seguinte: ext.kotlin_version = 'x.x.x'e substitua xxx pela versão atual do seu plugin Kotlin. insira a descrição da imagem aqui

Para verificar qual é a versão atual do seu plugin Kotlin:

  1. Vá para: Ferramentas -> Kotlin -> Atualizações do plug-in do Kotlin para confusões

  2. Clique em "Verificar novamente". Após um segundo, você verá a versão do seu plugin Kotlin. (Se não estiver atualizado, seu plugin Kotlin será atualizado.) insira a descrição da imagem aqui insira a descrição da imagem aqui

NB: Verifique também seu (Module: app) build.gradlearquivo e garanta que você não usa:

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

mas

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

Observe a diferença "... jre7 ..." -> "... jdk7 ...". Substitua também "1.2.40" pela versão atual do plug-in Kotlin.

Ivo Stoyanov
fonte
Obrigado, me ajudou a atualizar meu plugin Koltin executando Ferramentas-> Kotlin -> Configurar atualizações do Kotlin-> Verificar atualizações-> Instalar.
Shylendra Madda
Esta resposta deve ser aceita !! Estou usando o Android Studio 3.1.3, tive o mesmo problema do OP
Ajay Kulkarni
lembre-se de usar 1.3.31
Raju yourPepe
11

reclamou (no Android Studio 3.0.1) ... provavelmente devido às dependências das bibliotecas referenciadas:

Sua versão do tempo de execução Kotlin na biblioteca 'org.jetbrains.kotlin: kotlin-stdlib: 1.1.3@jar' é 1.1.3, enquanto a versão do plugin é 1.1.51-release-Studio3.0-1.

então eu forcei a construção contra a versão exigida, no nível do módulo build.gradle :

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

e o resultado é:

./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
 ...
Martin Zeitler
fonte
6

Você pode atualizar duas partes:

  1. tempo de execução kotlin para o projeto
  2. plugin do kotlin

A resposta de Ivo Stoyanov mostra como fazer isso usando os menus do Android Studio. Quando recebi a mensagem de erro e tentei isso (atualizando o plugin kotlin) sozinho, ele ainda reclamou do tempo de execução do kotlin. Você pode atualizar isso em um projeto por base do projeto, adicionando a linha ext.kotlin_version ao gradle de construção do projeto, como indicam algumas das outras respostas. Mas você precisará conhecer a versão de tempo de execução do kotlin para isso. Como alternativa, você também pode fazer isso através dos menus, como mostramos abaixo, com o bônus de que o android studio mostra as versões disponíveis e você pode escolher as mais recentes.

passo 1

passo 2

etapa 3

Passo 4

E então, o android studio adicionará a linha apropriada no gradle de construção do seu projeto.

auspicious99
fonte
3

alterar seu ext.kotlin_version de '1.1.2-4' para ext.kotlin_version = '1.1.2-5' resolveu o problema para mim

Goiaba Malva
fonte
o plugin kotlin não suporta atualização automática de plugins ?? ele mostra a atualização Gradle manualmente
Devil10
4
mostra "Sua versão do tempo de execução Kotlin na biblioteca 'kotlin-stdlib-1.1.2-5' é 1.1.2-5, enquanto a versão do plugin é 1.1.3-release-Studio2.3-1. A biblioteca de tempo de execução deve ser atualizada para evitar problemas de compatibilidade ". .... o que devo fazer agora.
Devil10
alterando sua ext.kotlin_version de '1.1.2-5' para ext.kotlin_version = '1.1.3-1'
Beatrice Lin
2

a versão mais recente do kotlin é 1.2.41 use isso e sincronize seu projeto.

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
}
}
abhilasha Yadav
fonte
1
Agora é 1.2.51 em 5 de julho; veja minha resposta para uma maneira fácil de ver qual é a versão mais recente.
auspicious99
2

Em 8 de março de 2019, a versão atual do kotlin é'1.3.21'

Debaixo 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
}

Felicidades

ralphgabb
fonte
1

Esse problema ocorre quando você atualiza a versão do plug-in kotlin exibida no android studio, mas o problema é a versão atual do Android studio não é possível alterar dinamicamente o plug-in kotlin gradle, localizado no arquivo Build.gradle no nível do projeto .

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

Como resolver este problema?

Então, você precisa alterar manualmente esta versão. Você pode encontrar aqui

TapanHP
fonte
O tempo de execução do kotlin e o plug-in do kotlin são diferentes. A pergunta foi feita sobre a mensagem de erro que solicita a atualização do tempo de execução do kotlin.
auspicious99
1

Eu já me deparei com esse problema algumas vezes no Android Studio e no IDEA, e constatei que, se você acessar o arquivo Gradle de seus projetos e suas dependências, se definir a versão do kotlin-gradle-pluginpara $kotlin_version, a mensagem de aviso informará qual versão você precisa definido ext.kotlin_versioncomo.

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
}
}

insira a descrição da imagem aqui

Sal Aldana
fonte
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
    }
}
abhilasha Yadav
fonte
1

procure essas duas linhas de código

ext.kotlin_version = '1.3.11'

caminho de classe "org.jetbrains.kotlin: kotlin-gradle-plugin: $ kotlin_version"

substituir $ kotlin_version pelo valor real (aqui é 1.3.11)

caminho de classe "org.jetbrains.kotlin: kotlin-gradle-plugin: 1.3.11"

depois disso, seu IDE sugerirá automaticamente a versão atualizada

codificação feliz :)

muhammad awais
fonte
0

Kotlin versão mais recente:

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
    }
}
abhilasha Yadav
fonte
Agora é 1.2.51 em 5 de julho; veja minha resposta para uma maneira fácil de ver qual é a versão mais recente.
auspicious99
0

Um pouco chato, mas o estúdio age assim algumas vezes. As etapas abaixo podem corrigir o problema.

Vamos para

Configurações -> Compilação, Execução, Desenvolvimento -> Gradle -> Usar wrapper gradle padrão (recomendado)

altere para Usar local e volte para Usar padrão. O Studio perguntará sobre a atualização do gradle após fechar as janelas de configurações.

Vishal Pawar
fonte
0

Eu estava enfrentando o mesmo problema após a atualização do meu estúdio android de 3.0.1 para 3.2.1.My problema foi resolvido depois de usar isso.

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
}

}

Narendra.kr
fonte
-1

Eu havia enfrentado esse problema no Android Studio mais recente do canal Canary. Você pode considerar fazer o downgrade do Android Studio para a versão estável também.

Isso aconteceu comigo no Android Studio 3.0 RC1.

ViliusK
fonte