性能不行,不支持增量,也没做注解解析的过滤操作
不知是否你们代码量不多,或者对编译耗时这个要求不高,这个插件对于大点项目的耗时是很夸张的。
-
假增量,在Transform里面写了支持增量,但实际并没有这么做,还是全局遍历
-
读所有问题来做解析注解完全没必要,可以利用apt生成份包含有这个注解的类,从而来加速解析速度,每个类都找javassist去解析判断,性能很差的,大海捞针一样。
希望作者能优化楼上提出的问题
感谢建议,事实上我已经在着手重构,新的版本会在API兼容的基础上,使用性能更好的实现方案 :) 对于目前的版本,编译耗时主要在全量编译的过程中,个人实践 20+ 模块的编译过程中,耗时可接受,对于模块单独开发的流程则不会有任何影响。本人开发项目流程开发中,已经很少使用全量编译,大多数时候都是在模块单独开发,所以当前版本对日常开发的影响并不大。
作者你好,请问性能优化计划有什么进展吗?
你好 关于性能问题,可以参考或者使用下面的开源库: https://github.com/bugyun/SpiderMan/tree/master/SpiderMan-plugin-core 优势: 优化文件处理速度 启用多线程来优化速度 比市面上相关插件速度快1倍以上 避免处理各种文件 只需要继承几个类就可以完成 ASM/Javassist 的代码注入 支持 ASM 和 Javassist
大家可以不使用注解,接口的初始化可以自行实现,效率是最高的, 自己初始化接口也没多少工作量的