All Classes and Interfaces

Class
Description
A class storing accept or reject criteria.
Accept/reject for leaf matches.
Accept/reject for prefix strings.
Accept/reject for whole-strings matches.
Stores the type descriptor of a Class<?>, as found in an annotation parameter value.
Class for wrapping an enum constant value (split into class name and constant name), as used as an annotation parameter value.
Holds metadata about a specific annotation instance on a class, method, method parameter or field.
InvocationHandler for dynamically instantiating an Annotation object.
A list of AnnotationInfo objects.
Filter an AnnotationInfoList using a predicate mapping an AnnotationInfo object to a boolean, producing another AnnotationInfoList for all items in the list for which the predicate is true.
A wrapper used to pair annotation parameter names with annotation parameter values.
A list of AnnotationParameterValue objects.
Extract classpath entries from the Ant ClassLoader.
Holds metadata about an array class.
A byte array slice.
An array type signature.
Assertions.
A ThreadPoolExecutor that can be used in a try-with-resources block.
A type signature for a base type (byte, char, double, float, int, long, short, boolean, or void).
A class to find the unique ordered classpath elements.
A cache of field types and associated constructors for each encountered class, used to speed up constructor lookup.
Placeholder class to signify no constructor was found previously.
The list of fields that can be (de)serialized (non-final, non-transient, non-synthetic, accessible), and their corresponding resolved (concrete) types.
A classfile binary format parser.
Class containment.
Thrown when a classfile's contents are not in the correct format.
 
 
Thrown when a classfile needs to be skipped.
 
 
A Slice reader that works as either a RandomAccessReader or a SequentialReader.
Uber-fast, ultra-lightweight Java classpath and module path scanner.
Method to use to attempt to circumvent encapsulation in JDK 16+, in order to get access to a classloader's private classpath.
Add a classpath element filter.
Add a classpath element URL filter.
A callback used to handle failure during an asynchronous scan.
A callback used to process the result of a successful asynchronous scan.
ClassLoader for classes found by ClassGraph during scanning.
Allow for overrideClassLoaders to be called with a ClassGraphClassLoader as a parameter, so that nested scans can share a single classloader (#485).
An unchecked exception that is thrown when an error state occurs or an unhandled exception is caught during scanning.
Holds metadata about a class encountered during a scan.
The class type to return.
A set of classes that indirectly reachable through a directed path, for a given relationship type, and a set of classes that is directly related (only one relationship step away).
How classes are related.
A uniquified (deduplicated) list of ClassInfo objects, which stores both reachable classes (obtained through a given class relationship, either by direct relationship or through an indirect path), and directly related classes (classes reachable through a direct relationship only).
Filter a ClassInfoList using a predicate mapping a ClassInfo object to a boolean, producing another ClassInfoList for all items in the list for which the predicate is true.
A class to find the unique ordered classpath elements.
A ClassLoader handler.
The registry for ClassLoaderHandler classes.
A list of fully-qualified ClassLoader class names paired with the ClassLoaderHandler that can handle them.
A class to find all unique classloaders.
Holds metadata about class members of a class encountered during a scan.
A classpath element (a directory or jarfile on the classpath).
A directory classpath element, using the Path API.
A module classpath element.
A zip/jarfile classpath element.
A class to find the unique ordered classpath elements.
A class to find the unique ordered classpath elements.
A classpath element and the ClassLoader it was obtained from.
A class type or type variable.
A class reference type signature (called "ClassTypeSignature" in the classfile documentation).
A class type signature (called "ClassSignature" in the classfile documentation).
A wrapper for ByteBuffer that implements the Closeable interface, releasing the ByteBuffer when it is no longer needed.
Collection utilities.
ClassLoaderHandler that is able to extract the URLs from a CxfContainerClassLoader.
Extract classpath entries from the Eclipse Equinox ClassLoader.
Extract classpath entries from the Eclipse Equinox ContextFinder ClassLoader.
Fallback ClassLoaderHandler.
Resolve relative paths and URLs/URIs against a base path in a way that is faster than Java's URL/URI parser (and much faster than Path), while aiming for cross-platform compatibility, and hopefully in particular being robust to the many forms of Windows path weirdness.
A zip entry within a LogicalZipFile.
Custom Class Loader Handler for OSGi Felix ClassLoader.
Holds metadata about fields of a class encountered during a scan.
A list of FieldInfo objects.
Filter an FieldInfoList using a predicate mapping an FieldInfo object to a boolean, producing another FieldInfoList for all items in the list for which the predicate is true.
Information on the type of a field.
The Enum PrimitiveType.
A File slice.
File utilities.
Builds a class graph visualization in Graphviz .dot file format.
A named object.
A Java type signature.
Annotate a class field with this annotation to use that field's value instead of the automatically-generated id for object references in JSON output.
A list of named objects.
Check if this thread or any other thread that shares this InterruptionChecker instance has been interrupted or has thrown an exception.
Jarfile utilities.
Extract classpath entries from the JBoss ClassLoader.
A placeloader ClassLoaderHandler that matches Java 9+ classloaders, but does not attempt to extract URLs from them (module scanning uses a different mechanism from classpath scanning).
An intermediate object in the (de)serialization process, representing a JSON array.
Fast, lightweight Java object to JSON serializer, and JSON to Java object deserializer.
Used to hold object instantiations temporarily before their fields can be populated, so that object references can be resolved in the same order during deserialization as they were created during serialization.
An intermediate object in the (de)serialization process, representing a JSON Object.
A JSON parser, based on the PEG grammar found at: https://github.com/azatoth/PanPG/blob/master/grammars/JSON.peg
A class that serves as a placeholder for circular references between objects.
Fast, lightweight Java object to JSON serializer, and JSON to Java object deserializer.
Utils for Java serialization and deserialization.
Reflection driver for the jvm-driver library, if it is available at runtime.
 
A logical zipfile, which represents a zipfile contained within a ZipFileSlice of a PhysicalZipFile.
A tree-structured threadsafe log that allows you to add log entries in arbitrary order, and have the output retain a sane order.
A list of named objects that can be indexed by name.
Holds metadata about methods of a class encountered during a scan.
A list of MethodInfo objects.
Filter an MethodInfoList using a predicate mapping an MethodInfo object to a boolean, producing another MethodInfoList for all items in the list for which the predicate is true.
Information on the parameters of a method.
A method type signature (called "MethodSignature" in the classfile documentation).
A class to find the visible modules.
Holds metadata about a package encountered during a scan.
A list of ModuleInfo objects.
Filter an ModuleInfoList using a predicate mapping an ModuleInfo object to a boolean, producing another ModuleInfoList for all items in the list for which the predicate is true.
Information on the module path.
A ModuleReader proxy, written using reflection to preserve backwards compatibility with JDK 7 and 8.
A ModuleReference proxy, written using reflection to preserve backwards compatibility with JDK 7 and 8.
Narcissus reflection driver (uses the Narcissus library, if it is available, which allows access to non-public fields and methods, circumventing encapsulation and visibility controls via JNI).
Open and read jarfiles, which may be nested within other jarfiles.
 
Wrapper class that allows an Inflater instance to be reset for reuse and then recycled by a Recycler.
A union type, used for typesafe serialization/deserialization to/from JSON.
Handle the OSGi DefaultClassLoader.
Holds metadata about a package encountered during a scan.
A list of PackageInfo objects.
Filter an PackageInfoList using a predicate mapping an PackageInfo object to a boolean, producing another PackageInfoList for all items in the list for which the predicate is true.
An implementation of ParameterizedType, used to replace type variables with concrete types.
ClassLoaderHandler that is used to test PARENT_LAST delegation order.
A parsing exception.
A generic PEG parser.
A Path slice.
A physical zipfile, which is mmap'd using a FileChannel.
Handle the Plexus ClassWorlds ClassRealm ClassLoader.
A potentially unmodifiable list of objects.
A proxying InputStream implementation that compiles for JDK 7 but can support the methods added in JDK 8 by reflection.
Extract classpath entries from the Quarkus ClassLoader.
RandomAccessReader backed by a byte array.
Interface for random access to values in byte order.
An AutoCloseable wrapper for a recyclable object instance.
Recycler for instances of type T, where instantiating this type may throw checked exception E.
An object for wrapping a HashMap key so that the hashmap performs reference equality on the keys, not equals() equality.
A type signature for a reference type.
Reflection driver
Reflection utility methods that can be used by ClassLoaderHandlers.
An interface for recycleable objects that need to be reset when RecycleOnClose.close() is called to recycle the object.
A classpath or module path resource (i.e.
An AutoCloseable list of AutoCloseable Resource objects.
A FunctionalInterface for consuming the contents of a Resource as a byte array.
A FunctionalInterface for consuming the contents of a Resource as a byte array, throwing IOException to the caller if an IO exception occurs.
A FunctionalInterface for consuming the contents of a Resource as a ByteBuffer.
A FunctionalInterface for consuming the contents of a Resource as a ByteBuffer, throwing IOException to the caller if an IO exception occurs.
A FunctionalInterface for consuming the contents of a Resource as an InputStream.
A FunctionalInterface for consuming the contents of a Resource as an InputStream, throwing IOException to the caller if an IO exception occurs.
Filter a ResourceList using a predicate mapping a Resource object to a boolean, producing another ResourceList for all items in the list for which the predicate is true.
The classpath scanner.
WorkUnitProcessor for scanning classfiles.
Used to enqueue classfiles for scanning.
Used to enqueue classpath elements for opening.
The result of a scan.
A class to hold a serialized ScanResult along with the ScanSpec that was used to scan.
A superclass of objects accessible from a ScanResult that are associated with a ClassInfo object.
The scanning specification.
Whether a path is a descendant of a rejected path, or an ancestor or descendant of an accepted path.
Interface for sequentially reading values in byte order.
Simple implementation of a thread factory.
A map from keys to singleton instances.
Thrown when SingletonMap.newInstance(Object, LogNode) throws an exception.
Create a new instance.
Wrapper to allow an object instance to be put into a ConcurrentHashMap using putIfAbsent() without requiring the instance to be initialized first, so that putIfAbsent can be performed without wrapping it with a synchronized lock, and so that initialization work is not wasted if an object is already in the map for the key.
A slice of a File, ByteBuffer or InputStream.
This handler uses
invalid reference
nonapi.io.github.classgraph.classloaderhandler.ClassLoaderHandler.DelegationOrder#PARENT_LAST
to support the RestartClassLoader of Spring Boot's devtools.
Standard reflection driver (uses AccessibleObject.setAccessible(boolean) to access non-public fields if necessary).
File utilities.
A class to find rt.jar and any JRE "lib/" or "ext/" jars.
Extract classpath entries from the Tomcat/Catalina WebappClassLoaderBase.
A type argument.
A type wildcard.
A type parameter.
A mapping from TypeVariable to resolved Type.
A type signature for a reference type or base type.
Utilities for parsing Java type descriptors and type signatures.
The origin of the modifier bits.
A type variable signature.
Extract classpath entries from the Uno-Jar's JarClassLoader and One-Jar's JarClassLoader.
ClassLoaderHandler that is able to extract the URLs from a URLClassLoader.
A simple URL path encoder.
Finds the version number of ClassGraph, and the version of the JDK.
The operating system type.
Extract classpath entries from the Weblogic ClassLoaders.
WebsphereLibertyClassLoaderHandler.
Handle the WebSphere traditonal ClassLoaders.
A parallel work queue.
A work unit processor.
A wrapper for work units (needed to send a poison pill as a null value, since BlockingQueue does not accept null values).
A zipfile slice (a sub-range of bytes within a PhysicalZipFile.