So einen Aspekt mit einer Methode, die ich habe mit dem folgenden Ausdruck erklärt bekommt:Gibt es einen AspectJ Pointcut-Ausdruck, der alle Unterpakete durchsucht?
@Before("execution(* aaa.bbb.ccc.*.*(..))")
Das funktioniert perfekt für alle Klassen im Paket aaa.bbb.ccc
. Nun möchte ich jedoch alle Klassen in aaa.bbb
, einschließlich diejenigen in aaa.bbb.ccc
erfassen. Also versuchte ich es bis zu hier sichern:
@Before("execution(* aaa.bbb.*.*(..))")
Dies ist nur die Klassen aus aaa.bbb
packt, aber, und ignoriert Klassen von aaa.bbb.ccc
. Gibt es eine Möglichkeit, den Ausdruck rekursiv nach allen Unterpaketen suchen zu lassen?
Dies sind grundlegende Dinge, die in der Dokumentation ausführlich behandelt werden. Wie auch immer, schön, dass du es selbst gefunden hast. Sie können es optimieren, indem Sie einen Punkt und einen Stern weglassen: 'execution (* aaa.bbb .. * (..))' – kriegaex
@kriegaex Können Sie mich auf die Dokumentation verweisen, wo das ist? Ich habe lange auf Google gesucht, bevor ich hierher kam und fragte. – asteri
Suchen Sie unter "Typnamensmuster" in der [Programmieranleitung] (http://eclipse.org/aspectj/doc/released/progguide/printable.html#d0e5901) nach. – kriegaex