/** * Return the classes from the given package and subpackages using the supplied classloader * * @param classLoader classloader to be used * @param pkg package to scan * @return set of found classes * @throws IOException */ public static Set<Class<?>> scanPackage(ClassLoader classLoader, Package pkg) throws IOException { return scanPackage(classLoader, pkg.getName()); }
private void scanPackages(String... packages) { if (packages == null) { return; } for (String pkg : packages) { try { for (Class<?> cl : ClassPathUtils.scanPackage(classLoader, pkg)) { handleClass(cl); } } catch (IOException e) { throw new QueryException(e); } } }
@Test public void scanPackage() throws IOException { ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); Set<Class<?>> classes = ClassPathUtils.scanPackage(classLoader, SomeClass.class.getPackage()); assertFalse(classes.isEmpty()); }
@Test public void scanPackage_check_initialized() throws IOException { ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); Set<Class<?>> classes = ClassPathUtils.scanPackage(classLoader, getClass().getPackage()); assertFalse(classes.isEmpty()); assertEquals("XXX", SomeOtherClass2.property); }
@Test public void scanPackage() throws IOException { ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); Set<Class<?>> classes = ClassPathUtils.scanPackage(classLoader, SomeClass.class.getPackage()); assertFalse(classes.isEmpty()); }
@Test public void scanPackage_check_initialized() throws IOException { ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); Set<Class<?>> classes = ClassPathUtils.scanPackage(classLoader, getClass().getPackage()); assertFalse(classes.isEmpty()); assertEquals("XXX", SomeOtherClass2.property); }