The org.netbeans.modules.classfile package supports direct access to a Java Virtual Machine classfile contents.
The ClassFile library is an API to read Java classfiles, as described by
The Java Virtual Machine Specification. Given a file or stream reference to a Java
classfile, the API provides read-only access to all of its class attributes, including
type information, methods and fields, generics support (if any), etc.
NOTE: this library is not really a NetBeans module, in that it doesn't have any NetBeans references. It therefore has nothing pluggable, no NetBeans Lookups, and is not extensible.
Java 11 added a new constant pool entry type to support the constantDynamic instruction.
Introduced ModulePackages, ModuleMainClass, ModuleTarget attributes according to recent JDK 9 JLS
Updated ClassFile to recent JDK 9 JLS.
Added isModule method into a ClassFile to test that a classfile represents a module descriptor.
Java 9 added a Module attribute for module-info.class describing the module.
The normal usecase is for a client wanting to inspect a classfile. A
instance is created with either a
InputStream instance. All attributes of the classfile are available as properties,
The sources for the module are in the Apache Git repositories or in the GitHub repositories.
Read more about the implementation in the answers to architecture questions.