J'ai une annotation de marqueur simple pour les méthodes (similaire au premier exemple de l'article 35 dans Java efficace (2e éd.)) :
/**
* Marker annotation for methods that are called from installer's
* validation scripts etc.
*/
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface InstallerMethod {
}
Ensuite, dans un paquet donné (disons com.acme.installer
), qui a quelques sous-paquets contenant une vingtaine de classes, je voudrais trouver toutes les méthodes qui sont annotées avec elle. (Parce que je voudrais faire quelques vérifications concernant toutes les méthodes annotées dans un test unitaire).
Quel est le moyen le plus simple de le faire (le cas échéant) ? De préférence sans ajouter de nouvelles bibliothèques ou de nouveaux frameworks tiers.
Modifier : pour clarifier, évidemment method.isAnnotationPresent(InstallerMethod.class)
sera le moyen de vérifier si une méthode possède l'annotation - mais ce problème inclut la recherche de toutes les méthodes.