svo*_*oid 5 android intellij-idea gradle kotlin
Kotlin 1.4.0 现已稳定。因此,我想更新我的多模块 Android 项目来使用它。我将 IDEA 设置为使用 Kotlin 插件 1.4.0-release-IJ2020.2-1 并在使用 Kotlin DSL 的 buildSrc build.gradle.kts 中,我为 jvm 加载 Kotlin,如下所示:
plugins {
kotlin("jvm") version "1.4.0"
}
Run Code Online (Sandbox Code Playgroud)
我的应用程序级插件块看起来像这样
plugins {
id("com.android.application")
id("com.google.gms.google-services")
kotlin("android")
kotlin("kapt")
id("kotlin-android-extensions")
id("androidx.navigation.safeargs.kotlin")
}
Run Code Online (Sandbox Code Playgroud)
我还将 Kotlin stdlib 添加到我的应用程序级别 build.gradle.kts 依赖项中
implementation("org.jetbrains.kotlin:kotlin-stdlib:1.4.0")
Run Code Online (Sandbox Code Playgroud)
现在尝试构建我的项目时,我收到多个错误,如下所示:
'let((T) -> R): R' is only available since Kotlin 1.3.50 and cannot be used in Kotlin 1.3
Run Code Online (Sandbox Code Playgroud)
我不明白。gradle 是如何尝试在这里使用 Kotlin 1.3 的?知道如何解决这个问题吗?当使用 Kotlin v1.3.72 时它工作正常。
到目前为止我尝试过的:
更新 忘记提及我还收到以下警告。稳定的时候怎么会没有支撑呢?
> 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`.
Run Code Online (Sandbox Code Playgroud)
也许您应该明确地将 Kotlin 标准库添加到您的依赖项中?
dependencies {
implementation(kotlin("stdlib"))
}
Run Code Online (Sandbox Code Playgroud)
在 Kotlin 1.4 中,不再需要添加此依赖项。该插件默认将 Stdlib 应用于它所应用的项目。
您不再需要在任何 Kotlin Gradle 项目(包括多平台项目)中声明对 stdlib 库的依赖项。默认添加依赖项。
自动添加的标准库将是相同版本的 Kotlin Gradle 插件,因为它们具有相同的版本控制。
归档时间: |
|
查看次数: |
6473 次 |
最近记录: |