升级到 Android Studio (2020.3.1) Canary 15 导致 Compose 构建错误
Upgrading to Android Studio (2020.3.1) Canary 15 causes Compose build error
我升级到 Android Studio (2020.3.1) Canary 15 并开始出现编译错误。
产生的错误是
e: This version (1.0.0-alpha13) of the Compose Compiler requires Kotlin version 1.4.30 but you appear to be using Kotlin version 1.4.32 which is not known to be compatible. Please fix your configuration (or suppressKotlinVersionCompatibilityCheck
but don't say I didn't warn you!).
应用配置版本为:
ext {
gms_version = "4.3.5"
agp_version = '7.0.0-alpha15'
ktlint_version = "10.0.0"
kotlin_version = "1.4.32"
detekt_version = "1.16.0"
versions_version = "0.36.0"
dagger_version = "2.34.1-beta"
crashlytics_gradle_version = "2.5.2"
sceneform_version = "1.17.1"
nav_version = "2.3.5"
compose_version = "1.0.0-beta05"
}
dependencies {
...
// Compose dependencies
implementation composeDependencies.composeUi
implementation composeDependencies.composeTooling
implementation composeDependencies.composeFoundation
implementation composeDependencies.composeMaterial
implementation composeDependencies.composeViewModel
implementation networkDependencies.retrofit
}
我看过一个讨论这个问题的类似问题 ,但它似乎与我的情况无关,因为我没有使用 Compose activity。
您可以降级到 1.4.30,也可以添加一个编译器选项来忽略警告
kotlinOptions {
val options = listOf(
"-P",
"plugin:androidx.compose.compiler.plugins.kotlin:suppressKotlinVersionCompatibilityCheck=true"
)
freeCompilerArgs = freeCompilerArgs + options
}
我遇到了同样的问题,我所做的是更改 build.gradle:
"classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5"
至
"classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.30"
Android 注意:
在buildscript > dependencies
中:
Change classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5"
To classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.30"
我安装了 1.4.30,因为我的情况在 1.4.32 上不起作用。
Link 来自本教程中的信息:Layouts in Jetpack Compose
您可以在项目级模块和 Sync Gradle 项目下尝试此脚本。
buildscript {
ext {
//...
kotlin_version = '1.4.30'
}
//...
dependencies {
//...
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
我升级到 Android Studio (2020.3.1) Canary 15 并开始出现编译错误。
产生的错误是
e: This version (1.0.0-alpha13) of the Compose Compiler requires Kotlin version 1.4.30 but you appear to be using Kotlin version 1.4.32 which is not known to be compatible. Please fix your configuration (or
suppressKotlinVersionCompatibilityCheck
but don't say I didn't warn you!).
应用配置版本为:
ext {
gms_version = "4.3.5"
agp_version = '7.0.0-alpha15'
ktlint_version = "10.0.0"
kotlin_version = "1.4.32"
detekt_version = "1.16.0"
versions_version = "0.36.0"
dagger_version = "2.34.1-beta"
crashlytics_gradle_version = "2.5.2"
sceneform_version = "1.17.1"
nav_version = "2.3.5"
compose_version = "1.0.0-beta05"
}
dependencies {
...
// Compose dependencies
implementation composeDependencies.composeUi
implementation composeDependencies.composeTooling
implementation composeDependencies.composeFoundation
implementation composeDependencies.composeMaterial
implementation composeDependencies.composeViewModel
implementation networkDependencies.retrofit
}
我看过一个讨论这个问题的类似问题
您可以降级到 1.4.30,也可以添加一个编译器选项来忽略警告
kotlinOptions {
val options = listOf(
"-P",
"plugin:androidx.compose.compiler.plugins.kotlin:suppressKotlinVersionCompatibilityCheck=true"
)
freeCompilerArgs = freeCompilerArgs + options
}
我遇到了同样的问题,我所做的是更改 build.gradle:
"classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5"
至
"classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.30"
Android 注意:
在buildscript > dependencies
中:
Change
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5"
To
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.30"
我安装了 1.4.30,因为我的情况在 1.4.32 上不起作用。
Link 来自本教程中的信息:Layouts in Jetpack Compose
您可以在项目级模块和 Sync Gradle 项目下尝试此脚本。
buildscript {
ext {
//...
kotlin_version = '1.4.30'
}
//...
dependencies {
//...
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}