/** * @param files ordered list of files and directories from which to load classes and resources */ public SquidClassLoader(List<File> files) { super(computeParent()); loaders = new ArrayList<>(); for (File file : files) { if (file.exists()) { try { if (file.isDirectory()) { loaders.add(new FileSystemLoader(file)); } else if (file.getName().endsWith(".jar")) { loaders.add(new JarLoader(file)); } else if (file.getName().endsWith(".aar")) { loaders.add(new AarLoader(file)); } } catch (IllegalStateException e) { LOG.warn("Unable to load classes from '{}'", file.getPath()); LOG.debug("{}: {}", e.getMessage(), e.getCause().getMessage()); } } } }
/** * @param files ordered list of files and directories from which to load classes and resources */ public SquidClassLoader(List<File> files) { super(computeParent()); loaders = new ArrayList<>(); for (File file : files) { if (file.exists()) { try { if (file.isDirectory()) { loaders.add(new FileSystemLoader(file)); } else if (file.getName().endsWith(".jar")) { loaders.add(new JarLoader(file)); } else if (file.getName().endsWith(".aar")) { loaders.add(new AarLoader(file)); } } catch (IllegalStateException e) { LOG.warn("Unable to load classes from '{}'", file.getPath()); LOG.debug("{}: {}", e.getMessage(), e.getCause().getMessage()); } } } }