メソッド シグネチャの変更をキャプチャし、それが発生したときにエラーをスローしようとしています。しかし、宣言エラーは期待どおりに機能していません
@DeclareError("call(* a.b.C.method(..)) && !call(* a.b.C.method(int))")
public static final String errorMsg= "Signature error";
これは、常にこのメソッドの呼び出しと一致しています。
しかし、このポイントカットを @Before に移動すると、メソッド シグネチャが変更されない限り一致しなくなります。
ポイントカットに関する @DeclareError と @Before の動作が異なる理由について何か考えはありますか?
ありがとう