artifact.getType(), artifact.getClassifier(),
artifact.getScope(), null, artifact.isOptional() );
}
getLog().debug( "Building project for " + artifact );
MavenProject p = null;
try
{
p = mavenProjectBuilder.buildFromRepository( artifact, remoteRepo, localRepository );
}
catch ( InvalidProjectModelException e )
{
getLog().warn( "Invalid project model for artifact [" + artifact.getArtifactId() + ":" +
artifact.getGroupId() + ":" + artifact.getVersion() + "]. " +
"It will be ignored by the remote resources Mojo." );
continue;
}
String supplementKey =
generateSupplementMapKey( p.getModel().getGroupId(), p.getModel().getArtifactId() );
if ( supplementModels.containsKey( supplementKey ) )
{
Model mergedModel = mergeModels( p.getModel(), (Model) supplementModels.get( supplementKey ) );
MavenProject mergedProject = new MavenProject( mergedModel );
projects.add( mergedProject );
mergedProject.setArtifact( artifact );
mergedProject.setVersion( artifact.getVersion() );
getLog().debug( "Adding project with groupId [" + mergedProject.getGroupId() + "] (supplemented)" );
}
else
{
projects.add( p );
getLog().debug( "Adding project with groupId [" + p.getGroupId() + "]" );