从Jcenter迁移至Maven Central时无法解析koin依赖报错如何解决?
问题根因
报错的核心原因是你把Android平台专属的AAR格式依赖引入了纯JVM类型的:domain模块:io.insert-koin:koin-androidx-scope:2.2.3是专供Android项目使用的依赖,打包格式为AAR,而纯JVM模块仅支持JAR格式的类文件依赖,因此出现变体匹配失败的报错。
解决方案
方案1:调整domain模块的Koin依赖(推荐)
纯JVM模块请使用Koin的纯JVM核心依赖,替换原有Android专属依赖:
- 先删除:domain模块build配置中
io.insert-koin:koin-androidx-scope:2.2.3的引入声明 - 替换为对应版本的纯JVM核心依赖:
Groovy格式配置:
Kotlin DSL格式配置:implementation "io.insert-koin:koin-core:2.2.3"implementation("io.insert-koin:koin-core:2.2.3") - koin-android、koin-androidx-scope等Android专属依赖仅在你的Android应用/库模块中引入即可。
方案2:升级Koin版本适配多模块需求
如果需要在跨平台/多模块架构中使用scope相关能力,可将Koin版本升级到3.x以上版本,3.x版本对JVM平台的依赖拆分更清晰,核心包已内置基础scope能力,无需额外引入androidx扩展:
implementation "io.insert-koin:koin-core:3.4.0"
缓存清理操作
如果修改后仍同步失败,可依次执行以下操作清除缓存:
- 执行Gradle清理命令:
./gradlew clean - 删除项目根目录下的
.gradle缓存文件夹 - 重新触发Gradle项目同步
内容的提问来源于stack exchange,提问作者Nion
相关产品推荐
相关产品推荐

