【发布时间】:2010-11-04 13:34:12
【问题描述】:
为什么会出现以下代码:
pointcut callsToList() : call(* List.*(..));
before(List l) : callsToList() && target(l) {
System.out.println("cool");
}
生成以下警告:
建议定义在 org.eclipse.ajdt.examples.ListAdvice 尚未应用 [Xlint:adviceDidNotMatch]
我正在使用 Eclipse。我安装了eclipse aspectj plugin,当然我的项目是aspectj项目。
编辑:此外,我从 ajdt 插件提供的工作示例开始:
pointcut callsToBeginTask() : call(void IProgressMonitor.beginTask(..));
before() : callsToBeginTask() {
System.out.println("cool");
};
我看不出有什么不同,除了这个例子没有警告就可以工作......
【问题讨论】:
-
也许这与 Eclipse/OSgi 类加载策略有关?为了挂钩提供的切入点,aspectj 是如何工作的?
-
你能展示应该由建议编织的代码吗?
-
不确定是否理解您的请求。我希望在运行多个自定义插件的 Eclipse 应用程序中调用此建议。因此,我要“分析”的代码被分成许多插件/包/类。