当前位置:  开发笔记 > 编程语言 > 正文

警告"Kotlin插件版本与库版本不同"(但它是!)

如何解决《警告"Kotlin插件版本与库版本不同"(但它是!)》经验,为你挑选了1个好方法。

我有一个Android工作室项目,我在其中添加了一个Java库模块,我打电话给他core.我的三个Gradle构建文件看起来像这样.

项目/的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
}

核心/的build.gradle

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

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

应用程序/的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.有谁知道这个解决方案?



1> yole..:

这是Kotlin插件中的一个错误.我在Kotlin问题跟踪器中提交了一个问题.您可以简单地忽略该消息.

编辑:JetBrains将此问题标记为KT-23744的副本 "Kotlin库和Gradle插件版本不同"检查非JVM依赖性的误报".


仍然是AS 3.3.1和kotlin 1.3.21版中的错误
仍然存在于AS`3.5`和Kotlin`1.3.50`中
仍然存在于AS`3.4.1`和Kotlin`1.3.31`中
KT-23744已被标记为固定,应在“ 1.3.20”中固定。但是我仍然在android studio上面对Kotlin插件版本1.3.20-release-Studio3.3-1的问题。在IntelliJ for kotlin插件版本`1.3.20-release-IJ2018.3-1`上,我没有这个问题。
仍然存在于AS`3.4`和Kotlin`1.3.30`中。
推荐阅读
勤奋的瞌睡猪_715
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有