You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Compose Multiplatform添加:feature:learning模块后无法关联求助

解决Compose Multiplatform模块依赖无法关联的问题

1. 检查依赖声明的位置与写法

确保composeApp模块的build.gradle.kts里,依赖是添加在对应sourceSet的依赖块中,而不是随便放在根目录:

// composeApp/build.gradle.kts
kotlin {
    sourceSets {
        val commonMain by getting {
            dependencies {
                implementation(project(":feature:learning"))
            }
        }
        // 若需平台特定依赖,比如安卓端
        val androidMain by getting {
            dependencies {
                implementation(project(":feature:learning"))
            }
        }
    }
}

别只在dependencies {}根块里加,KMM模块依赖必须绑定到对应的sourceSet。

2. 确认feature:learning模块的配置合规

检查该模块的build.gradle.kts是否正确配置为KMM共享模块:

plugins {
    kotlin("multiplatform")
    id("com.android.library")
    kotlin("plugin.compose")
}

kotlin {
    androidTarget {
        compilations.all {
            kotlinOptions.jvmTarget = "1.8"
        }
    }
    iosX64()
    iosArm64()
    iosSimulatorArm64()

    sourceSets {
        val commonMain by getting {
            dependencies {
                implementation(compose.runtime)
                implementation(compose.foundation)
                implementation(compose.material3)
            }
        }
    }
}

android {
    compileSdk = 34
    defaultConfig {
        minSdk = 24
    }
}

如果没正确应用KMM插件或配置目标平台,Gradle不会把它识别为可依赖的共享模块。

3. 强制同步Gradle并清理缓存

  • 点击Android Studio右上角的「Sync Project with Gradle Files」按钮,确保依赖同步完成。
  • 若同步无效,尝试清理缓存:
    • 执行File > Invalidate Caches... > Invalidate and Restart
    • 或终端运行:./gradlew clean build --refresh-dependencies

4. 检查代码的访问权限与导入

  • 确认LearningScreen可组合函数的访问修饰符不是private(默认public,除非你手动改了),否则其他模块无法访问。
  • 检查composeApp中导入LearningScreen的包名是否拼写正确,别因为包名写错导致找不到类。

5. 验证settings.gradle.kts的模块配置

打开根目录的settings.gradle.kts,确认已经添加了feature:learning模块:

include(":composeApp")
include(":feature:learning") // 这一行必须存在

如果没加这行,Gradle根本不会识别这个模块,自然无法建立依赖关联。

内容的提问来源于stack exchange,提问作者fahrizal89

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 14:01:02