Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.test
- @Named("valueToStock")
- public class Main {
- @SneakyThrows
- @SuppressWarnings("unchecked")
- public static ImmutableMap<Class<? extends Annotation>, Class<?>> find(Class<? extends Annotation> annotation, String packageBase) {
- final ClassLoader loader = Thread.currentThread().getContextClassLoader();
- return ClassPath.from(loader).getTopLevelClassesRecursive(packageBase).stream()
- .collect(Collectors.collectingAndThen(Collectors
- .toMap(x -> x.load().getAnnotation(annotation), x-> x.load()), ImmutableMap::copyOf));
- }
- public static void main(String[] args) {
- find(Named.class, "com.test")
- .forEach((x, y) -> System.out.println(String.format("Class: %s, Annotation: %s", y, x)));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement