use of org.commonjava.maven.atlas.ident.version.InvalidVersionSpecificationException in project galley by Commonjava.
the class MavenModelProcessor method addPlugins.
private void addPlugins(final List<PluginView> plugins, final ProjectVersionRef projectRef, final Builder builder, final URI source, final boolean managed) {
if (plugins != null) {
for (final PluginView plugin : plugins) {
ProjectVersionRef pluginRef = null;
try {
if (plugin.getVersion() == null) {
logger.error("%s: Cannot find a version for plugin: {}. Skipping.", projectRef, plugin.toXML());
continue;
}
pluginRef = plugin.asProjectVersionRef();
// force the InvalidVersionSpecificationException.
pluginRef.getVersionSpec();
final String profileId = plugin.getProfileId();
final URI location = RelationshipUtils.profileLocation(profileId);
boolean inherited = plugin.getOriginInfo().isInherited();
boolean mixin = plugin.getOriginInfo().isMixin();
builder.withPlugins(new SimplePluginRelationship(source, location, projectRef, pluginRef, builder.getNextPluginDependencyIndex(projectRef, managed, inherited), managed, inherited));
} catch (final GalleyMavenException e) {
logger.error(String.format("%s: plugin is invalid! Reason: %s. Skipping:\n\n%s\n\n", projectRef, e.getMessage(), plugin.toXML()), e);
continue;
} catch (final InvalidVersionSpecificationException e) {
logger.error(String.format("%s: plugin is invalid! Reason: %s. Skipping:\n\n%s\n\n", projectRef, e.getMessage(), plugin.toXML()), e);
continue;
} catch (final InvalidRefException e) {
logger.error(String.format("%s: plugin is invalid! Reason: %s. Skipping:\n\n%s\n\n", projectRef, e.getMessage(), plugin.toXML()), e);
continue;
}
List<PluginDependencyView> pluginDependencies = null;
Set<PluginDependencyView> impliedPluginDependencies = null;
try {
pluginDependencies = plugin.getLocalPluginDependencies();
impliedPluginDependencies = plugin.getImpliedPluginDependencies();
} catch (final GalleyMavenException e) {
logger.error(String.format("%s: Cannot retrieve plugin dependencies for: %s. Reason: %s", projectRef, pluginRef, e.getMessage()), e);
} catch (final InvalidVersionSpecificationException e) {
logger.error(String.format("%s: Cannot retrieve plugin dependencies for: %s. Reason: %s", projectRef, pluginRef, e.getMessage()), e);
} catch (final InvalidRefException e) {
logger.error(String.format("%s: Cannot retrieve plugin dependencies for: %s. Reason: %s", projectRef, pluginRef, e.getMessage()), e);
}
addPluginDependencies(pluginDependencies, plugin, pluginRef, projectRef, builder, source, managed);
logger.debug("{}: Adding implied dependencies for: {}\n\n {}", projectRef, pluginRef, impliedPluginDependencies == null ? "-NONE-" : new JoinString("\n ", impliedPluginDependencies));
addPluginDependencies(impliedPluginDependencies, plugin, pluginRef, projectRef, builder, source, managed);
}
}
}
use of org.commonjava.maven.atlas.ident.version.InvalidVersionSpecificationException in project galley by Commonjava.
the class MavenModelProcessor method readRelationships.
public EProjectDirectRelationships readRelationships(final MavenPomView pomView, final URI source, final ModelProcessorConfig discoveryConfig) throws GalleyMavenException {
final boolean includeManagedDependencies = discoveryConfig.isIncludeManagedDependencies();
final boolean includeBuildSection = discoveryConfig.isIncludeBuildSection();
final boolean includeManagedPlugins = discoveryConfig.isIncludeManagedPlugins();
logger.info("Reading relationships for: {}\n (from: {})", pomView.getRef(), source);
try {
final ProjectVersionRef projectRef = pomView.getRef();
final EProjectDirectRelationships.Builder builder = new EProjectDirectRelationships.Builder(source, projectRef);
addParentRelationship(source, builder, pomView, projectRef);
addDependencyRelationships(source, builder, pomView, projectRef, includeManagedDependencies);
if (includeBuildSection) {
addExtensionUsages(source, builder, pomView, projectRef);
addPluginUsages(source, builder, pomView, projectRef, includeManagedPlugins);
}
return builder.build();
} catch (final InvalidVersionSpecificationException e) {
throw new GalleyMavenException("Failed to parse version for model: {}. Reason: {}", e, pomView, e.getMessage());
} catch (final IllegalArgumentException e) {
throw new GalleyMavenException("Failed to parse relationships for model: {}. Reason: {}", e, pomView, e.getMessage());
}
}
Aggregations