Android项目升级至Kotlin 1.8.10编译报错求助
解决Kotlin 1.8.10升级后kaptGenerateStubsDebugKotlin任务报错问题
问题根源
这个报错是因为Kotlin 1.8.x对增量编译相关工具类做了调整,而项目中依赖的注解处理器(比如Dagger、Room、Hilt这类)版本未同步升级,导致旧版本处理器调用了已被修改或移除的cleanDirectoryContents方法,引发兼容性冲突。
解决步骤
- 同步注解处理器版本:检查项目中使用的注解处理器依赖,确保版本适配Kotlin 1.8.10:
- Room需升级到2.5.0及以上
- Dagger/Hilt需升级到2.44.2及以上
- 其他自定义注解处理器也需同步适配Kotlin 1.8.x的API变更
- 清理重建项目:
- 执行Android Studio的
Build->Clean Project - 再执行
Build->Rebuild Project - 也可手动删除项目根目录的
.gradle、build文件夹,以及模块内的build文件夹后重新构建
- 执行Android Studio的
- 调整kapt配置:尝试关闭kapt增量编译,避免旧配置干扰:
kapt { incremental = false } - 升级AGP版本:Kotlin 1.8.10建议搭配Android Gradle Plugin 7.4.0及以上版本,更新项目根目录
build.gradle中的AGP版本后同步项目。
验证方法
执行命令./gradlew :useraction:kaptGenerateStubsDebugKotlin,确认编译任务是否正常完成。
内容的提问来源于stack exchange,提问作者kingston
相关产品推荐
相关产品推荐

