也许我只是看错了方向,但我认为JSE关于注解处理的文档非常稀少。我想编写一个注解处理器,用于处理带有注解的字符串字段和局部变量,并将它们替换为计算出来的字符串表达式。这应该不会太复杂,但我在javax.annotation.processing的Javadoc中感到相当迷茫。
编辑:我需要在编译时处理注解,因为我想修改生成的代码。它应该将带注解的常量字符串表达式替换为计算出的字符串表达式。
也许我只是看错了方向,但我认为JSE关于注解处理的文档非常稀少。我想编写一个注解处理器,用于处理带有注解的字符串字段和局部变量,并将它们替换为计算出来的字符串表达式。这应该不会太复杂,但我在javax.annotation.processing的Javadoc中感到相当迷茫。
编辑:我需要在编译时处理注解,因为我想修改生成的代码。它应该将带注解的常量字符串表达式替换为计算出的字符串表达式。
使用编译时注解处理器是无法完成此操作的。编译时注解处理器只能生成新文件(和类),而不能修改现有类。您可以在运行时进行反射,但严格来说,这并不被称为注解处理。此外,您将无法访问局部变量。
如果您想了解如何编写编译时注解处理器,请参阅https://github.com/pellaton/spring-configuration-validation-processor
检查