java 如何将方面代码编织到JAR中现有的类文件中?

yebdmbv4  于 2023-11-15  发布在  Java
关注(0)|答案(1)|浏览(127)

我是Aspectj的新手,我有一个疑问,我们是否可以使用aspectj在jar文件中存在的函数之前注入代码。

jgzswidk

jgzswidk1#

是的,您可以将方面代码编织到第三方类文件或JAR中。有两种方法可以实现这一点:

  • 二元编织:使用AsiaJ编译器 ajc 将aspect应用到现有的编译器中的类文件上。为此,将编译器放在编译器的 inpath 上。编译后,您可以将新编织的类文件重新打包到一个新的编译器中,然后您可以部署和使用它来代替原始的编译器。
  • 负载时间交织(LTW):通过命令行选项-javaagent:pathto/aspectjweaver.jar使用Aspect J织入代理启动JVM,以便在类加载期间实现方面织入。这样您就牺牲了一些启动时间,但不需要创建修改过的Aspect文件。一切都是动态发生的。

现在请读一些AspectJ documentation

相关问题