Avn*_*evy 7 java compiler-construction annotations bytecode-manipulation
用法示例:
我想在类字段上添加一个自定义注释@MyContainer,然后在所有这些字段上自动添加相关的Hibernate注释(取决于字段类型和属性).
另外,我需要将JAXB XmlType注释添加到类中,并将类型名称基于类名.
我还希望基于其类型等向字段添加注释.所有添加的注释应该在运行时可用(因此hibernate/JAXB可以找到它们).
我知道以下选项:
我的主要目标是:
如果已经完成此类工作的人能够为这样的任务推荐最佳方法(也许还有潜在的陷阱),我将不胜感激.
我认为预处理类源应该是您的首选方式。这使您能够使源代码与编译的类同步,这对于您提到的调试很有好处。但它也有利于版本控制,因为您可以签入那些生成的注释。如果在编译期间运行工具,那么追踪工具中的问题也会变得更加困难。在生成源阶段运行代码生成时,IDE 支持也应该没有问题。
编辑:快速搜索产生了一些有关使用 eclipse jdt或netbeans 中的某些内容进行编程 java 源修改的信息 。但这可能值得更多研究或者本身就是一个问题。