web-dev-qa-db-ja.com

警告「Kotlinプラグインのバージョンはライブラリのバージョンと同じではありません」(しかし!)

AndroidスタジオプロジェクトにJavaライブラリモジュールを追加し、coreと呼びます。私の3つのGradleビルドファイルの外観があります。このような。

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

私が抱えている問題は、_core/build.gradle_で、_kotlin-stdlib-jdk7_行が警告Plugin version (1.2.40) is not the same as library version (jdk7-1.2.40)を与えていることです。私はそれを変更しようとしました:

_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"_

しかし、警告はまだそこにあります。ビルドは引き続き正常に実行され、問題なく警告を抑制して無視できることは知っていますが、なぜこれが起こっているのか、どうすればそれを取り除くことができるのかを知りたいです。私はAndroid Studio 3.0.1。を使用しています。これに対する解決策を知っている人はいますか?

28
Leo Aso

これはKotlinプラグインのバグです。 Kotlin課題トラッカーに an issue を提出しました。メッセージを単に無視できます。

編集:JetBrainsは、この問題を KT-23744 "KotlinライブラリとGradleプラグインのバージョンが異なる"の重複としてマークしました。

43
yole