用aspectj修改现有的java类行为?

时间:2011-03-16 04:46:31

标签: java class aspectj

我想在已经编译的java类中添加一些调试代码,而不是触及原始类。我正在考虑使用AspectJ,但我只是想知道它是否可行,如果是这样的话?

实施例: class A包含void main(),它执行stuff并调用方法sum()。 方面B在A.sum()之前添加println() 我希望在没有以任何方式编辑A的情况下运行具有方面B修改的A类。

1 个答案:

答案 0 :(得分:1)

使用加载时编织(LTW)可以在不触及现有java类(二进制或源代码)的情况下执行此操作。

请参阅LTW的官方文件: http://www.eclipse.org/aspectj/doc/released/devguide/ltw.html