Class LocalModuleFinder

    • Constructor Detail

      • LocalModuleFinder

        public LocalModuleFinder​(java.io.File[] repoRoots,
                                 PathFilter pathFilter)
        Construct a new instance.
        Parameters:
        repoRoots - the repository roots to use
        pathFilter - the path filter to use
      • LocalModuleFinder

        public LocalModuleFinder​(java.io.File[] repoRoots)
        Construct a new instance.
        Parameters:
        repoRoots - the repository roots to use
      • LocalModuleFinder

        public LocalModuleFinder()
        Construct a new instance, using the module.path system property or the JAVA_MODULEPATH environment variable to get the list of module repository roots.

        This is equivalent to a call to LocalModuleFinder(true).

      • LocalModuleFinder

        public LocalModuleFinder​(boolean supportLayersAndAddOns)
        Construct a new instance, using the module.path system property or the JAVA_MODULEPATH environment variable to get the list of module repository roots.
        Parameters:
        supportLayersAndAddOns - true if the identified module repository roots should be checked for an internal structure of child "layer" and "add-on" directories that may also be treated as module roots lower in precedence than the parent root. Any "layers" subdirectories whose names are specified in a layers.conf file found in the module repository root will be added in the precedence of order specified in the layers.conf file; all "add-on" subdirectories will be added at a lower precedence than all "layers" and with no guaranteed precedence order between them. If false no check for "layer" and "add-on" directories will be performed.
    • Method Detail

      • parseModuleXmlFile

        @Deprecated(forRemoval=true)
        public static ModuleSpec parseModuleXmlFile​(ModuleIdentifier identifier,
                                                    ModuleLoader delegateLoader,
                                                    java.io.File... roots)
                                             throws java.io.IOException,
                                                    ModuleLoadException
        Deprecated, for removal: This API element is subject to removal in a future version.
        Parse a module.xml file and return the corresponding module specification.
        Parameters:
        identifier - the identifier to load
        delegateLoader - the delegate module loader to use for module specifications
        roots - the repository root paths to search
        Returns:
        the module specification
        Throws:
        java.io.IOException - if reading the module file failed
        ModuleLoadException - if creating the module specification failed (e.g. due to a parse error)
      • parseModuleXmlFile

        public static ModuleSpec parseModuleXmlFile​(java.lang.String name,
                                                    ModuleLoader delegateLoader,
                                                    java.io.File... roots)
                                             throws java.io.IOException,
                                                    ModuleLoadException
        Parse a module.xml file and return the corresponding module specification.
        Parameters:
        name - the name of the module to load
        delegateLoader - the delegate module loader to use for module specifications
        roots - the repository root paths to search
        Returns:
        the module specification
        Throws:
        java.io.IOException - if reading the module file failed
        ModuleLoadException - if creating the module specification failed (e.g. due to a parse error)
      • toString

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

        public void close()
        Close this module loader and release all backing files. Note that subsequent load attempts will fail with an error after this method is called.
        Specified by:
        close in interface java.lang.AutoCloseable