public ExtensionClassLoader createExtensionClassLoader()

in src/main/java/org/apache/nifi/extension/definition/extraction/ExtensionClassLoaderFactory.java [92:110]


    public ExtensionClassLoader createExtensionClassLoader() throws MojoExecutionException, ProjectBuildingException {
        final Artifact narArtifact = project.getArtifact();
        final Set<Artifact> narArtifacts = getNarDependencies(narArtifact);

        final ArtifactsHolder artifactsHolder = new ArtifactsHolder();
        artifactsHolder.addArtifacts(narArtifacts);

        getLog().debug("Project artifacts: ");
        narArtifacts.forEach(artifact -> getLog().debug(artifact.getArtifactId()));

        final ExtensionClassLoader parentClassLoader = createClassLoader(narArtifacts, artifactsHolder);
        final ExtensionClassLoader classLoader = createClassLoader(narArtifacts, parentClassLoader, narArtifact);

        if (getLog().isDebugEnabled()) {
            getLog().debug("Full ClassLoader is:\n" + classLoader.toTree());
        }

        return classLoader;
    }