web-dev-qa-db-fra.com

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 projet de studio Android dans lequel j'ai ajouté un module de bibliothèque Java, que j'appelle core. Mes trois fichiers de construction Gradle ressemblent comme ça.

project/build.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
}

core/build.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 est que, dans core/build.gradle, La ligne kotlin-stdlib-jdk7 Me donne l'avertissement Plugin version (1.2.40) is not the same as library version (jdk7-1.2.40). J'ai essayé de le changer en:

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 fonctionne toujours avec succès, et je sais que je peux supprimer l'avertissement sans aucun problème et l'ignorer, mais je veux vraiment savoir pourquoi cela se produit et comment je peux m'en débarrasser. J'utilise Android Studio 3.0.1. Quelqu'un connaît-il une solution à cela?

28
Leo Aso

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

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

43
yole