Class JARClassLoader


  • public class JARClassLoader
    extends java.lang.ClassLoader
    A class loader implementation that loads classes from JAR files. All instances share the same set of classes.
    • Constructor Summary

      Constructors 
      Constructor Description
      JARClassLoader()
      This constructor creates a class loader for loading classes from all plugins.
      JARClassLoader​(boolean delegateFirst)
      Creates a class loader that will optionally delegate the finding of classes to the parent class loader by default.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static void dump()
      For debugging.
      protected void finalize()  
      java.net.URL getResource​(java.lang.String name)
      overriding getResource() because we want to search FIRST in this ClassLoader, then the parent, the path, etc.
      java.lang.String getResourceAsPath​(java.lang.String name)
      construct a jeditresource:/etc path from the name of a resource in the associated jar.
      java.io.InputStream getResourceAsStream​(java.lang.String name)  
      java.util.Enumeration<java.net.URL> getResources​(java.lang.String name)  
      java.lang.Class loadClass​(java.lang.String clazz, boolean resolveIt)  
      java.lang.String toString()  
      • Methods inherited from class java.lang.ClassLoader

        clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findClass, findLibrary, findLoadedClass, findResource, findResource, findResources, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, loadClass, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
      • Methods inherited from class java.lang.Object

        clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • JARClassLoader

        public JARClassLoader()
        This constructor creates a class loader for loading classes from all plugins. For example BeanShell uses one of these so that scripts can use plugin classes.
      • JARClassLoader

        public JARClassLoader​(boolean delegateFirst)
        Creates a class loader that will optionally delegate the finding of classes to the parent class loader by default.
        Since:
        jEdit 4.3pre6
    • Method Detail

      • loadClass

        public java.lang.Class loadClass​(java.lang.String clazz,
                                         boolean resolveIt)
                                  throws java.lang.ClassNotFoundException
        Overrides:
        loadClass in class java.lang.ClassLoader
        Throws:
        java.lang.ClassNotFoundException - if the class could not be found
      • getResourceAsStream

        public java.io.InputStream getResourceAsStream​(java.lang.String name)
        Overrides:
        getResourceAsStream in class java.lang.ClassLoader
      • getResource

        public java.net.URL getResource​(java.lang.String name)
        overriding getResource() because we want to search FIRST in this ClassLoader, then the parent, the path, etc.
        Overrides:
        getResource in class java.lang.ClassLoader
      • getResourceAsPath

        public java.lang.String getResourceAsPath​(java.lang.String name)
        construct a jeditresource:/etc path from the name of a resource in the associated jar. The existence of the resource is not actually checked.
        Parameters:
        name - name of the resource
        Returns:
        jeditresource:/path_to_the_jar!name_of_the_resource
        Throws:
        java.lang.UnsupportedOperationException - if this is an anonymous JARClassLoader (no associated jar).
      • dump

        public static void dump()
        For debugging.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • getResources

        public java.util.Enumeration<java.net.URL> getResources​(java.lang.String name)
                                                         throws java.io.IOException
        Overrides:
        getResources in class java.lang.ClassLoader
        Returns:
        zero or one resource, as returned by getResource()
        Throws:
        java.io.IOException
      • finalize

        protected void finalize()
        Overrides:
        finalize in class java.lang.Object