kapt目录生成的类无法被IDE index问题

注解处理器大概分为annotationProcessor, kapt , ksp 三个阶段.
最早的annotationProcessor 生成的类文件, 是会默认被AndroidStudio index的, 但是升级到kapt 后, index就失效了. 现象就是IDE里不能正常index到kapt 生成的类文件了. 虽然可以硬编码import类, 像txt硬编码一样访问类的属性, 因为最终注解处理器生成的类还是会被打包到apk中的. 但是显然, 这样做编码很吃力, 无法index意味着你没法使用类型推断, 方法变量名提示等功能.

解决办法: 将kapt 生成的类目录, 手动加入到sourceSet 中, 但是一个一个module加很麻烦, 其实kapt 生成的目录是固定的:

 build/genrated/source/kapt/flavourName(渠道名)/ packageName(包名)

根据这个, 我们就可以正常写一个gradle脚本, 来被所有module复用了:


image.png

此时项目已经可以正常被index了. 这不会影响APK产物大小, 毕竟如上面所说, 这些类本来就要被打包到APK里.

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容