AJDT (AspectJ Development Tools) Eclipse プラグインを使用しています。
次のアドバイスを書きました。
package com.exemple.aop.aspect;
import com.exemple.aop.bean.impl.MyBeanImpl.Iface;
aspect MyAspect {
// pointcut
pointcut clientMethod(Iface p) : target(p) && call(String com.exemple.aop.bean.impl.MyBeanImpl$Client.doSomething());
// advice
// **LINE JUST BELOW IS MARKED AS ERROR**
after(Iface p) returning(Object x): clientMethod(p) {
System.out.println("Returning from client method");
System.out.println("Target: " + p);
System.out.println("Return: " + x);
}
}
機能する単体テストを作成しました。コンソールにトレースが表示されます。
ただし、AspectJ/Java エディターで Java ファイルを開くと、Eclipse UI の行にエラーが表示されます " after(Iface p) return(Object x): clientMethod(p) { "
この行に複数のマーカー
このメソッドは int 型の結果を返す必要があります
この行に 2 つの AspectJ マーカー
[プロジェクト エクスプローラー] ビューでは、プロジェクトにエラー フラグが付けられていないことに注意してください。
Eclipse AJDT プラグインが「このメソッドは int 型の結果を返す必要があります」というエラーを表示する理由を知っている人はいますか?
ありがとう!