liquibase-core/src/main/java/liquibase/servicelocator/DefaultPackageScanClassResolver.java
protected Enumeration<URL> getResources(ClassLoader loader, String packageName) throws IOException {
        log.fine(LogType.LOG, "Getting resource URL for package: " + packageName + " with classloader: " + loader);

        // If the URL is a jar, the URLClassloader.getResources() seems to require a trailing slash.  The
        // trailing slash is harmless for other URLs
        if (!packageName.endsWith("/")) {
            packageName = packageName + "/";
        }
        return loader.getResources(packageName);
    }
protected Enumeration<URL> getResources(ClassLoader loader, String packageName) throws IOException {
        log.fine(LogType.LOG, "Getting resource URL for package: " + packageName + " with classloader: " + loader);

        // If the URL is a jar, the URLClassloader.getResources() seems to require a trailing slash.  The
        // trailing slash is harmless for other URLs
        if (!packageName.endsWith("/")) {
            packageName = packageName + "/";
        }
        return loader.getResources(packageName);
    }
Strategy to get the resources by the given classloader.
<p/>
Notice that in WebSphere platforms there is a {@link WebSpherePackageScanClassResolver}
to take care of WebSphere's odditiy of resource loading.

@param loader      the classloader
@param packageName the packagename for the package to load
@return URL's for the given package
@throws IOException is thrown by the classloader