...
to ensure that the application continues to provide reliable dataflow.
NarClassLoader
In a containerized environment like NiFi, it is important to allow different extension points to have arbitrary dependencies without those dependencies
affecting other, unrelated extension points. In Java, the mechanism for doing this is the ClassLoader. NiFi defines its own implementation of the
ClassLoader, the NarClassLoader. Each NiFi Archive (NAR) has its own NarClassLoader that is responsible for loading the classes defined in that
NAR. Additionally, it is responsible for providing native library isolation, so that a Processor, for example, can depend on native libraries that are not
shared with other components. This is accomplished by placing those native libraries in the NAR's native
directory.
For more information about NiFi Archives and how they are used, see the NiFi Archives (NARs) section in the Developer Guide.