Perché il seguente codice:Perché ho ricevuto l'avviso "avviso non è stato applicato"?
pointcut callsToList() : call(* List.*(..));
before(List l) : callsToList() && target(l) {
System.out.println("cool");
}
genera il seguente avviso:
consiglio definito nel org.eclipse.ajdt.examples.ListAdvice non è stata applicata [Xlint: adviceDidNotMatch]
Sto lavorando con in Eclipse. Ho installato eclipse aspectj plugin e ovviamente il mio progetto è un progetto di aspetto.
Edit: Inoltre ho iniziato da un esempio di lavoro fornito da ajdt plugin:
pointcut callsToBeginTask() : call(void IProgressMonitor.beginTask(..));
before() : callsToBeginTask() {
System.out.println("cool");
};
non riesco a vedere alcuna differenza se non il fatto che questo esempio funziona senza preavviso ...
Forse questo è correlato alla politica di caricamento della classe Eclipse/OSgi? Come funziona l'aspettoj al fine di agganciare i pointcuts forniti? –
Puoi mostrare il codice che dovrebbe essere intrecciato dal consiglio? – Espen
Non capisco la tua richiesta. Voglio che questo consiglio venga chiamato in un'applicazione Eclipse con diversi plug-in personalizzati. Quindi il codice che voglio "analizzare" è diviso in molti plugin/pacchetti/classi. –