我一直在使用 metrics-aspectj 库,发现注释一个捕获性能指标的方法非常方便。最近,我在尝试扩展具有注释方法的类时碰壁了。这是我看到的:
@Metrics
public class Base {
public void something_not_timed() {
...
}
@Timed(name="method1-ProcessTime")
public void method1() {
...
}
}
我一直在生产中使用基类没有问题。现在我需要扩展这个类。
public class Derived extends Base {
@Override
public void something_not_timed() {
....
}
}
如您所见,method1() 未被覆盖。但问题是,每当我在派生类中使用 method1() 时,都会在 method1_aroundBody1$advice() 中得到 NullPointerException。
我不熟悉 AspectJ,所以无法真正弄清楚我缺少什么,任何建议都将受到高度赞赏。
谢谢!
问候, 卡里