Lombok如何在现有类上生成代码?

Mus*_*ven 14 java android annotations lombok

我可以使用annotationprocessor从头开始生成类,但是我无法像lombok那样修改类.我已经在android studio中搜索了lombok生成的类,但我什么都没发现.然后我通过他们的网站查看了lombok概述,并在论坛中对其进行了调查,但我最终没有任何内容.我的问题其实很简单.当我使用@Setter时,lombok如何将生成的代码与地雷统一起来.我怎样才能开发出像这样的处理器?

Dou*_*las 10

好像lombok如何工作的重复,我会标记为关闭,但你的赏金正在阻止它.

简而言之,Lombok实际上根本不生成代码.相反,它使用未指定和未记录的内部编译器实现api调用,在读取源代码和输出编译的字节码之间直接修改程序的抽象语法树.在更新到新的编译器版本时它可能会在没有警告或注意的情况下中断,但目前没有其他方法.

  • 还有"如何开发像?这样的处理器",最简单的方法是编写自定义的Lombok注释.参见例如https://binkley.blogspot.co.uk/2014/12/writing-your-own-lombok-annotation.html (2认同)