e:此版本(1.3.2)的Compose Incler需要Kotlin版本1.7.20,但您似乎使用的Kotlin版本1.9.23,目前尚不清楚该版本是否兼容.

这个错误是不言而喻的.对于其他匹配的项目,兼容性做得很好.出于某种原因,无论我在这个项目中做什么,错误都会持续存在.没有对1.3.2的合成编译器的引用.只有主应用程序使用compose.我try 过清洁/无效,结果相同.

这是一个多模块项目.Gradle构建脚本都使用相同的kotlin版本.

Build.gradle(项目)

buildscript {
    ext {
        kotlin_version = '1.9.23'
        compose_version = '1.6.5'
        kotlinCompilerExtensionVersion = '1.5.11'
        ...
    }

    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        ...
    }
}

Build.gradle(应用程序)

apply plugin: 'kotlin-android'

android {
    ...

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_17
        targetCompatibility JavaVersion.VERSION_17
    }

    kotlinOptions {
        jvmTarget = "17"
    }

    composeOptions {
        kotlinCompilerExtensionVersion kotlinCompilerExtensionVersion
    }

    buildFeatures {
        compose true
    }
}
dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"

    // Compose
    implementation "androidx.compose.ui:ui:$compose_version"
    implementation "androidx.compose.ui:ui-tooling-preview:$compose_version"
    debugImplementation "androidx.compose.ui:ui-tooling:$compose_version"

    // somewhere on a google doc it noted to NOT include this. Here just in case.
    // implementation "androidx.compose.material:material:$compose_version"
}

Build.gradle(模块a)

plugins {
    id 'com.android.library'
}
apply plugin: 'kotlin-android'

android {
    ...

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_17
        targetCompatibility JavaVersion.VERSION_17
    }

    kotlinOptions {
        jvmTarget = "17"
    }
}
dependencies {
    implementation 'androidx.core:core-ktx:1.12.0'
}

Build.gradle(模块b)

plugins {
    id 'com.android.library'
}
apply plugin: 'kotlin-android'

android {
    ...

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_17
        targetCompatibility JavaVersion.VERSION_17
    }

    kotlinOptions {
        jvmTarget = "17"
    }
}
dependencies {
    implementation 'androidx.core:core-ktx:1.12.0'
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
}

推荐答案

这对我有效,try 更换这条线

kotlinCompilerExtensionVersion kotlinCompilerExtensionVersion

与:

kotlinCompilerExtensionVersion rootProject.ext.kotlinCompilerExtensionVersion

当我用您的示例创建空项目时,kotlinCompilerExtensionVersion引用的是ComposeOptions#kotlinCompilerExtensionVersion,它的默认值可能是1.3.2,所以它设置了自己与自己之间相同的值,而不是从ext个属性中获取值.

Android相关问答推荐

编写Inbox需要具有匹配兼容性的Kotlin版本

Android配置设置. gradle不同应用风格

当X为lambda函数时,如何避免Android Studio错误检测参数X未使用?

如何制作带有图标和文本的Fab

无法从API访问项目详细信息

即使安装了Chrome和YouTube,Android对action_view a YouTube URL的意图也是空的

如何在安卓系统上使用Float16霓虹灯?

在Android上使用XSLT文件转换XML文件

如何消除脚手架和顶杆(material 3)更改 colored颜色 时的延迟?

StateFlow集合AsState没有更新他的值Jetpack Compose导航

每次重启Android时预填入Room数据库

解决失败:Landroidx/compose/runtime/PrimitiveSnapshotStateKt

减少Compose中可滚动选项卡之间的间距

尽管我在onCreate()期间已经初始化,但仍出现未初始化的late init变量错误

如何在 Jetpack Compose 中对数据类进行 Parcelize

AirDroid Business 如何能够从屏幕截图中排除覆盖?

组成不重叠的元素

Jetpack Compose 动画性能问题

如何在 Jetpack Compose 中设置行宽等于 TextField 的宽度?

获取模板向导配方类 Intellij 中的应用程序包名称