Я разрабатываю пользовательский плагин maven для поиска всех классов в пути сборки, чтобы получить пользовательское значение аннотации.
моя аннотация выглядит так: (@SendEmail (id = "test@test.com"))
Я нашел ниже пример, как искать во всех пакетах внутри папки sr c?
Reflections reflections = new Reflections("org.package.foo");
Set<Class<? extends Object>> allClasses =
reflections.getSubTypesOf(Object.class);
for (Class clazz : allClasses) {
Annotation[] annotations = clazz.getAnnotations();
for (Annotation annotation : annotations) {
if (annotation instanceof MyAnnotation) {
MyAnnotation myAnnotation = (MyAnnotation) annotation;
System.out.println("value: " + myAnnotation.value());
}
}
}