是否有任何免费库可以在编译时生成AspectJ代码(例如在注释处理步骤中)?我正在寻找类似于codemodel的东西,但要生成AspectJ代码。
答案 0 :(得分:1)
似乎没有这样的库可用。
在更多地阅读和分析codemodel的源代码之后:
使用codemodel生成纯粹的AspectJ代码是不可能的,因为无法声明如下内容:
public aspect TransactionManager {...}
无法正确扭转JDeclaredClass
项目以解决1.您必须从头开始重写几乎所有内容
AspectJ5引入了注释,这意味着我们可以在纯Java中声明方面:
@Aspect 公共类TransactionManager {...}
@AspectJ唯一真正棘手的部分似乎是Inter-type Declarations,但提供了一个好的/可行的解决方案here。
结论:生成AspectJ代码似乎不是特定的库,只能依赖于代码模型。