Class JavaSourceClassLoader


  • public class JavaSourceClassLoader
    extends AbstractJavaSourceClassLoader
    A ClassLoader that loads classes by looking for their source files through a "source path" and compiling them on-the-fly.

    Notice that this class loader does not support resoures in the sense of ClassLoader.getResource(String), ClassLoader.getResourceAsStream(String) nd ClassLoader.getResources(String).

    See Also:
    ClassLoaders
    • Method Detail

      • setSourcePath

        public void setSourcePath​(java.io.File[] sourcePath)
        Specified by:
        setSourcePath in class AbstractJavaSourceClassLoader
        Parameters:
        sourcePath - The sequence of directories to search for Java source files
      • setSourceCharset

        public void setSourceCharset​(java.nio.charset.Charset charset)
        Specified by:
        setSourceCharset in class AbstractJavaSourceClassLoader
        Parameters:
        charset - The character set to using when reading characters from a source file
      • setDebuggingInfo

        public void setDebuggingInfo​(boolean lines,
                                     boolean vars,
                                     boolean source)
        Specified by:
        setDebuggingInfo in class AbstractJavaSourceClassLoader
        Parameters:
        lines - Whether line number debugging information should be generated
        vars - Whether variables debugging information should be generated
        source - Whether source file debugging information should be generated
      • setCompilerOptions

        public void setCompilerOptions​(java.lang.String[] compilerOptions)
        Notice: Don't use the '-g' options - these are controlled through setDebuggingInfo(boolean, boolean, boolean).
        Parameters:
        compilerOptions - All command line options supported by the JDK JAVAC tool
      • findClass

        protected java.lang.Class<?> findClass​(java.lang.String className)
                                        throws java.lang.ClassNotFoundException
        Implementation of ClassLoader.findClass(String).
        Overrides:
        findClass in class java.lang.ClassLoader
        Throws:
        java.lang.ClassNotFoundException