Pourquoi le code suivant:Pourquoi j'ai reçu l'avertissement «Le conseil n'a pas été appliqué»?
pointcut callsToList() : call(* List.*(..));
before(List l) : callsToList() && target(l) {
System.out.println("cool");
}
génère l'avertissement suivant:
conseils définis dans org.eclipse.ajdt.examples.ListAdvice n'a pas été appliquée [Xlint: adviceDidNotMatch]
Je travaille avec Eclipse. J'ai installé eclipse aspectj plugin et bien sur mon projet est un projet d'aspectj.
Edit: De plus j'ai commencé à partir d'un exemple de travail fourni par AJDT plugin:
pointcut callsToBeginTask() : call(void IProgressMonitor.beginTask(..));
before() : callsToBeginTask() {
System.out.println("cool");
};
Je ne vois aucune différence, sauf le fait que cet exemple fonctionne sans avertissement ...
Peut-être est-ce lié à la politique de chargement des classes Eclipse/OSgi? Comment fonctionne Aspect pour accrocher les pointcoins fournis? –
Pouvez-vous montrer le code qui devrait être tissé par le conseil? – Espen
Vous n'êtes pas sûr de comprendre votre demande. Je veux que ce conseil soit appelé dans une application Eclipse exécutant plusieurs plugins personnalisés. Ainsi, le code que je veux "analyser" est divisé entre de nombreux plugins/packages/classes. –