如何使用Kotlin1.6.20编译compose 1.1.1

kognpnkq  于 2023-06-24  发布在  Kotlin
关注(0)|答案(7)|浏览(216)

我在构建项目时遇到了这样的错误:
e: This version (1.1.1) of the Compose Compiler requires Kotlin version 1.6.10 but you appear to be using Kotlin version 1.6.20 which is not known to be compatible. Please fix your configuration (or suppressKotlinVersionCompatibilityCheck but don't say I didn't warn you!).
我正在使用最新的IntelliJ Pro和最新的Kotlin版本。
我怎样才能让项目编译?

9o685dep

9o685dep1#

对于Kotlin版本1.6.20,您需要在build.gradle中添加这一行

composeOptions {
    kotlinCompilerExtensionVersion '1.2.0-alpha08'
}

请参考Google的documentation,了解更多关于Kotlin与不同撰写版本的兼容性

puruo6ea

puruo6ea2#

你需要使用Kotlin1.6.10版本来编译这个版本的compose项目。在下一个版本中,可能会添加新版本的Kotlin支持。更改您的gradle/maven属性以解决此问题。
在Gradle更改中:

kotlin("jvm") version "1.6.20"

致:

kotlin("jvm") version "1.6.10"

或者你可以添加编译器参数(但可能会有问题):

"-P", "plugin:androidx.compose.compiler.plugins.kotlin:suppressKotlinVersionCompatibilityCheck=true"
41ik7eoe

41ik7eoe3#

这里你可以看到compose和Kotlin版本Maphttps://developer.android.com/jetpack/androidx/releases/compose-kotlin

1.2.0-alpha08 ->1.6.20
1.1.0-rc02 -1.2.0-alpha07 ->1.6.10
wn9m85ua

wn9m85ua4#

根据上面user 2851150发布的兼容性表,https://developer.android.com/jetpack/androidx/releases/compose-kotlin,它适用于build.gradle(module)中的me设置:

android{
 ...
  composeOptions {
    kotlinCompilerExtensionVersion '1.1.1'
    kotlinCompilerVersion '1.6.10'
  }
 ...
}
3ks5zfa0

3ks5zfa05#

你需要遵循两个步骤,
1.转到你的build.gradle(project),在那里更改你的Kotlin-plugin版本

ext.kotlin_version = '1.6.10'
   //....
   dependencies {
       classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
   }
}

1.更改插件的Kotlin版本-

plugins {
    ...
    ...
    id 'org.jetbrains.kotlin.android' version '1.6.10' apply false
}
t9eec4r0

t9eec4r06#

这个答案的另一个更新,因为他们仍然没有为花栗鼠修复这个问题。我在评论中留下了导致问题的原因,所以你可能要用新版本再次更新。

buildscript {
    ext {
        //compose_version = '1.1.0-beta01'  -> causes problems
        compose_version = '1.2.0-alpha08'
    }
}// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
    id 'com.android.application' version '7.2.2' apply false
    id 'com.android.library' version '7.2.2' apply false
    //id 'org.jetbrains.kotlin.android' version '1.5.31' apply false -> causes problems
    id 'org.jetbrains.kotlin.android' version '1.6.20' apply false
}
0wi1tuuw

0wi1tuuw7#

转到项目级的build.gradle,并将Kotlin版本更改为Map所需的兼容版本

相关问题