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.
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.
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.RandomAccessReader
for a ByteBuffer
.RandomAccessReader
for a File
.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
,
throwing IOException
to the caller if an IO exception occurs.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.
Thrown when
SingletonMap.newInstance(Object, LogNode)
returns null.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.
This handler uses
to support
the
invalid reference
nonapi.io.github.classgraph.classloaderhandler.ClassLoaderHandler.DelegationOrder#PARENT_LAST
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.