Kotlin 1.4.0 现在稳定了。因此,我想更新我的多模块 Android 项目以使用它。我将 IDEA 设置为使用 Kotlin 插件 1.4.0-release-IJ2020.2-1 并在我的 buildSrc build.gradle.kts 中使用 Kotlin DSL,我正在为 jvm 加载 Kotlin,如下所示:

plugins {
    kotlin("jvm") version "1.4.0"
}
我的应用级插件块看起来像这样
plugins {
    id("com.android.application")
    id("com.google.gms.google-services")
    kotlin("android")
    kotlin("kapt")
    id("kotlin-android-extensions")
    id("androidx.navigation.safeargs.kotlin")
}
我还将 Kotlin stdlib 添加到我的应用程序级 build.gradle.kts 依赖项
implementation("org.jetbrains.kotlin:kotlin-stdlib:1.4.0")
现在尝试构建我的项目时,我收到多个错误,如下所示:
'let((T) -> R): R' is only available since Kotlin 1.3.50 and cannot be used in Kotlin 1.3
我不明白。 gradle 如何在这里尝试使用 Kotlin 1.3?关于如何解决这个问题的任何想法?当改用 Kotlin v1.3.72 时,它工作正常。
到目前为止我尝试过的:
  • 清洁项目
  • 使缓存无效并重新启动
  • 删除 .gradle 文件夹并重启
  • 修复损坏的类路径

  • 更新
    忘了提到我也收到以下警告。稳定时如何不受支持?
    > Configure project :buildSrc
    WARNING: Unsupported Kotlin plugin version.
    The `embedded-kotlin` and `kotlin-dsl` plugins rely on features of Kotlin `1.3.72` that might work differently than in the requested version `1.4.0`.
    

    最佳答案

    也许您应该明确地将 Kotlin 标准库添加到您的依赖项中?

    dependencies {
        implementation(kotlin("stdlib"))
    }
    
    在 Kotlin 1.4 中不再需要添加此依赖项。该插件默认将 Stdlib 应用于它所应用的项目。
    Kotlin 1.4 release notes :

    关于android - 尝试更新到 Kotlin 1.4.0 时出现奇怪的错误。如何使其与 Gradle 和 IntelliJ IDEA 2020.2.1 配合使用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/63686137/

    10-09 06:48
    查看更多