Class PlugInClassLoader

java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
com.vividsolutions.jump.workbench.plugin.PlugInClassLoader
All Implemented Interfaces:
Closeable, AutoCloseable

public class PlugInClassLoader extends URLClassLoader
  • Constructor Details

    • PlugInClassLoader

      public PlugInClassLoader(ClassLoader parent)
    • PlugInClassLoader

      public PlugInClassLoader(URL[] urls)
  • Method Details

    • loadClass

      public Class<?> loadClass(String name) throws ClassNotFoundException
      not really necessary now, but we keep it for reference for a future classloader per extension for allowing extensions to use differently versioned dependency jars in separate subfolders under lib/ext//
      Overrides:
      loadClass in class ClassLoader
      Throws:
      ClassNotFoundException
    • getResource

      public URL getResource(String name)
      THIS IS A WORKAROUND! java9 fails to resolve if the resource contains a leading slash e.g. /org/freevoice/jumpdbqueryextension/dbquerystrings.properties fails with null while org/freevoice/jumpdbqueryextension/dbquerystrings.properties will properly resolve to jar:file:lib/plus/jumpdbquery.jar!/org/freevoice/jumpdbqueryextension/dbquerystrings.properties
      Overrides:
      getResource in class ClassLoader
    • addUrls

      public void addUrls(URL[] urls)
      allow adding urls, any time
      Parameters:
      urls - array of URLs to add