in src/main/java/org/apache/nifi/extension/definition/extraction/ExtensionClassLoaderFactory.java [197:237]
private Artifact getProvidedArtifact(final String groupId, final String artifactId, final String version) throws MojoExecutionException {
final ArtifactHandler handler = artifactHandlerManager.getArtifactHandler("jar");
final VersionRange versionRange;
try {
versionRange = VersionRange.createFromVersionSpec(version);
} catch (final Exception e) {
throw new MojoExecutionException("Could not determine appropriate version for Provided Artifact " + groupId + ":" + artifactId, e);
}
final Artifact artifact = new DefaultArtifact(groupId, artifactId, versionRange, null, "jar", null, handler);
final ArtifactResolutionRequest request = new ArtifactResolutionRequest();
request.setLocalRepository(localRepo);
request.setRemoteRepositories(remoteRepos);
request.setArtifact(artifact);
final ArtifactResolutionResult result = artifactResolver.resolve(request);
if (!result.isSuccess()) {
final List<Exception> exceptions = result.getExceptions();
final MojoExecutionException exception = new MojoExecutionException("Could not resolve local dependency " + artifact);
if (exceptions != null) {
for (final Exception e : exceptions) {
exception.addSuppressed(e);
}
}
throw exception;
}
final Set<Artifact> artifacts = result.getArtifacts();
if (artifacts.isEmpty()) {
throw new MojoExecutionException("Could not resolve any artifacts for dependency " + artifact);
}
final List<Artifact> sorted = new ArrayList<>(artifacts);
Collections.sort(sorted);
return sorted.get(0);
}