Class ModuleUtils


  • @API(status=INTERNAL,
         since="1.1")
    public class ModuleUtils
    extends Object
    Collection of utilities for working with java.lang.Module and friends.

    DISCLAIMER

    These utilities are intended solely for usage within the JUnit framework itself. Any usage by external parties is not supported. Use at your own risk!

    Since:
    1.1
    • Constructor Detail

      • ModuleUtils

        public ModuleUtils()
    • Method Detail

      • findAllNonSystemBootModuleNames

        public static Set<String> findAllNonSystemBootModuleNames()
        Find all non-system boot modules names.
        Returns:
        a set of all such module names; never null but potentially empty
      • isJavaPlatformModuleSystemAvailable

        public static boolean isJavaPlatformModuleSystemAvailable()
        Determine if the current Java runtime supports the Java Platform Module System.
        Returns:
        true if the Java Platform Module System is available, otherwise false
      • getModuleName

        public static Optional<String> getModuleName​(Class<?> type)
        Return the name of the module that the class or interface is a member of.
        Parameters:
        type - class or interface to analyze
        Returns:
        the module name; never null but potentially empty
      • getModuleVersion

        public static Optional<String> getModuleVersion​(Class<?> type)
        Return the raw version of the module that the class or interface is a member of.
        Parameters:
        type - class or interface to analyze
        Returns:
        the raw module version; never null but potentially empty
      • findAllClassesInModule

        public static List<Class<?>> findAllClassesInModule​(String moduleName,
                                                            ClassFilter filter)
        Find all classes for the given module name.
        Parameters:
        moduleName - the name of the module to scan; never null or empty
        filter - the class filter to apply; never null
        Returns:
        an immutable list of all such classes found; never null but potentially empty