@Override public ClassLoader loadPlugin(Path pluginPath, PluginDescriptor pluginDescriptor) { PluginClassLoader pluginClassLoader = new PluginClassLoader(pluginManager, pluginDescriptor, getClass().getClassLoader()); pluginClassLoader.addFile(pluginPath.toFile()); return pluginClassLoader; }
/** * Add all {@code *.class} files from {@code classes} directories to plugin class loader. */ protected void loadClasses(Path pluginPath, PluginClassLoader pluginClassLoader) { for (String directory : pluginClasspath.getClassesDirectories()) { File file = pluginPath.resolve(directory).toFile(); if (file.exists() && file.isDirectory()) { pluginClassLoader.addFile(file); } } }
/** * Add all {@code *.jar} files from {@code lib} directories to plugin class loader. */ protected void loadJars(Path pluginPath, PluginClassLoader pluginClassLoader) { for (String libDirectory : pluginClasspath.getLibDirectories()) { Path file = pluginPath.resolve(libDirectory); List<File> jars = FileUtils.getJars(file); for (File jar : jars) { pluginClassLoader.addFile(jar); } } }
@Override public ClassLoader loadPlugin(Path pluginPath, PluginDescriptor pluginDescriptor) { PluginClassLoader pluginClassLoader = new PluginClassLoader(pluginManager, pluginDescriptor, getClass().getClassLoader()); pluginClassLoader.addFile(pluginPath.toFile()); return pluginClassLoader; }
/** * Add all {@code *.class} files from {@code classes} directories to plugin class loader. */ protected void loadClasses(Path pluginPath, PluginClassLoader pluginClassLoader) { for (String directory : pluginClasspath.getClassesDirectories()) { File file = pluginPath.resolve(directory).toFile(); if (file.exists() && file.isDirectory()) { pluginClassLoader.addFile(file); } } }
@Override public ClassLoader loadPlugin(Path pluginPath, PluginDescriptor pluginDescriptor) { if (pluginClassLoader == null) { boolean parentFirst=true; pluginClassLoader = new PluginClassLoader(pluginManager, pluginDescriptor, parentClassLoader,parentFirst); } pluginClassLoader.addFile(pluginPath.toFile()); return pluginClassLoader; } }
/** * Add all {@code *.jar} files from {@code lib} directories to plugin class loader. */ protected void loadJars(Path pluginPath, PluginClassLoader pluginClassLoader) { for (String libDirectory : pluginClasspath.getLibDirectories()) { Path file = pluginPath.resolve(libDirectory); List<File> jars = FileUtils.getJars(file); for (File jar : jars) { pluginClassLoader.addFile(jar); } } }