188 votes

Avertissement "La version du plugin Kotlin n'est pas la même que la version de la bibliothèque" (mais elle l'est!)

J'ai un Android studio projet dans lequel j'ai ajouté une bibliothèque Java module, que j'appelle core. Mes trois fichiers de build Gradle ressembler à ceci.

projet/construire.gradle

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

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

task clean(type: Delete) {
    delete rootProject.buildDir
}

de base/construire.gradle

apply plugin: 'java-library'
apply plugin: 'kotlin'

dependencies { 
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7"
    ...
}

app/build.gradle

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'

android { ... }

dependencies {
    implementation project(':core')
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation 'com.android.support.constraint:constraint-layout:1.1.0'
    implementation 'com.android.support:appcompat-v7:27.1.1'

    androidTestImplementation 'com.android.support.test:runner:1.0.1'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
    testImplementation 'junit:junit:4.12'
}

Le problème que j'ai, c'est que, en core/build.gradle, l' kotlin-stdlib-jdk7 ligne est de me donner l'alerte Plugin version (1.2.40) is not the same as library version (jdk7-1.2.40). J'ai essayé de changer pour:

implementation "org.jetbrains.kotlin:kotlin-stdlib"

implementation "org.jetbrains.kotlin:kotlin-stdlib:1.2.40"

implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.2.40"

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

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

Mais l'avertissement est toujours là. La construction s'exécute toujours avec succès, et je sais que je peux le réduire à l'avertissement sans aucun problème et l'ignorer, mais je veux vraiment savoir pourquoi ce qui se passe et comment je peux me débarrasser d'elle. Je suis l'aide d'Android Studio 3.0.1. Personne ne sait d'une solution à cela?

136voto

yole Points 3628

Il s'agit d'un bug dans le plugin Kotlin. J'ai déposé un problème dans l'outil de suivi des problèmes de Kotlin. Vous pouvez simplement ignorer le message.

EDIT: JetBrains a signalé le problème comme un doublon de KT-23744 "Les versions de la bibliothèque Kotlin et du plug-in Gradle sont différentes" inspection faux positif pour les dépendances non-JVM ".

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X