mirror of https://github.com/apache/maven.git
o cleaning up the project builder, deprecating maven 1.x repository support, it will be 3 years by the time this is actually released
so tough noogies for people still trying to use Maven 1.x repositories with Maven 2.x. The next series of refactoring I will be doing with GIT. git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@580609 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
0c84fd3f65
commit
e6a6476ad7
|
@ -252,6 +252,7 @@ public class DefaultMaven
|
||||||
true );
|
true );
|
||||||
|
|
||||||
systemContext.setSystemProperties( request.getProperties() );
|
systemContext.setSystemProperties( request.getProperties() );
|
||||||
|
|
||||||
systemContext.store( buildContextManager );
|
systemContext.store( buildContextManager );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -276,45 +277,29 @@ public class DefaultMaven
|
||||||
// instances just-in-time.
|
// instances just-in-time.
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
buildExtensionScanner.scanForBuildExtensions(
|
buildExtensionScanner.scanForBuildExtensions( files, request.getLocalRepository(), request.getProfileManager() );
|
||||||
files,
|
|
||||||
request.getLocalRepository(),
|
|
||||||
request.getProfileManager() );
|
|
||||||
}
|
}
|
||||||
catch ( ExtensionScanningException e )
|
catch ( ExtensionScanningException e )
|
||||||
{
|
{
|
||||||
throw new MavenExecutionException(
|
throw new MavenExecutionException( "Error scanning for extensions: " + e.getMessage(), e );
|
||||||
"Error scanning for extensions: " + e.getMessage(),
|
|
||||||
e );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
projects = collectProjects(
|
projects = collectProjects( files, request.getLocalRepository(), request.isRecursive(), request.getProfileManager(), !request.useReactor() );
|
||||||
files,
|
|
||||||
request.getLocalRepository(),
|
|
||||||
request.isRecursive(),
|
|
||||||
request.getProfileManager(),
|
|
||||||
!request.useReactor() );
|
|
||||||
|
|
||||||
}
|
}
|
||||||
catch ( ArtifactResolutionException e )
|
catch ( ArtifactResolutionException e )
|
||||||
{
|
{
|
||||||
throw new MavenExecutionException(
|
throw new MavenExecutionException( e.getMessage(), e );
|
||||||
e.getMessage(),
|
|
||||||
e );
|
|
||||||
}
|
}
|
||||||
catch ( ProjectBuildingException e )
|
catch ( ProjectBuildingException e )
|
||||||
{
|
{
|
||||||
throw new MavenExecutionException(
|
throw new MavenExecutionException( e.getMessage(), e );
|
||||||
e.getMessage(),
|
|
||||||
e );
|
|
||||||
}
|
}
|
||||||
catch ( ProfileActivationException e )
|
catch ( ProfileActivationException e )
|
||||||
{
|
{
|
||||||
throw new MavenExecutionException(
|
throw new MavenExecutionException( e.getMessage(), e );
|
||||||
e.getMessage(),
|
|
||||||
e );
|
|
||||||
}
|
}
|
||||||
return projects;
|
return projects;
|
||||||
}
|
}
|
||||||
|
@ -342,10 +327,7 @@ public class DefaultMaven
|
||||||
usingReleasePom = true;
|
usingReleasePom = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
MavenProject project = projectBuilder.build(
|
MavenProject project = projectBuilder.build( file, localRepository, globalProfileManager );
|
||||||
file,
|
|
||||||
localRepository,
|
|
||||||
globalProfileManager );
|
|
||||||
|
|
||||||
if ( isRoot )
|
if ( isRoot )
|
||||||
{
|
{
|
||||||
|
@ -355,6 +337,7 @@ public class DefaultMaven
|
||||||
if ( project.getPrerequisites() != null && project.getPrerequisites().getMaven() != null )
|
if ( project.getPrerequisites() != null && project.getPrerequisites().getMaven() != null )
|
||||||
{
|
{
|
||||||
DefaultArtifactVersion version = new DefaultArtifactVersion( project.getPrerequisites().getMaven() );
|
DefaultArtifactVersion version = new DefaultArtifactVersion( project.getPrerequisites().getMaven() );
|
||||||
|
|
||||||
if ( runtimeInformation.getApplicationVersion().compareTo( version ) < 0 )
|
if ( runtimeInformation.getApplicationVersion().compareTo( version ) < 0 )
|
||||||
{
|
{
|
||||||
throw new BuildFailureException(
|
throw new BuildFailureException(
|
||||||
|
@ -372,14 +355,14 @@ public class DefaultMaven
|
||||||
|
|
||||||
// Initial ordering is as declared in the modules section
|
// Initial ordering is as declared in the modules section
|
||||||
List moduleFiles = new ArrayList( project.getModules().size() );
|
List moduleFiles = new ArrayList( project.getModules().size() );
|
||||||
|
|
||||||
for ( Iterator i = project.getModules().iterator(); i.hasNext(); )
|
for ( Iterator i = project.getModules().iterator(); i.hasNext(); )
|
||||||
{
|
{
|
||||||
String name = (String) i.next();
|
String name = (String) i.next();
|
||||||
|
|
||||||
if ( StringUtils.isEmpty( StringUtils.trim( name ) ) )
|
if ( StringUtils.isEmpty( StringUtils.trim( name ) ) )
|
||||||
{
|
{
|
||||||
getLogger().warn(
|
getLogger().warn( "Empty module detected. Please check you don't have any empty module definitions in your POM." );
|
||||||
"Empty module detected. Please check you don't have any empty module definitions in your POM." );
|
|
||||||
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -388,15 +371,11 @@ public class DefaultMaven
|
||||||
|
|
||||||
if ( usingReleasePom )
|
if ( usingReleasePom )
|
||||||
{
|
{
|
||||||
moduleFile = new File(
|
moduleFile = new File( basedir, name + "/" + Maven.RELEASE_POMv4 );
|
||||||
basedir,
|
|
||||||
name + "/" + Maven.RELEASE_POMv4 );
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
moduleFile = new File(
|
moduleFile = new File( basedir, name + "/" + Maven.POMv4 );
|
||||||
basedir,
|
|
||||||
name + "/" + Maven.POMv4 );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( Os.isFamily( Os.FAMILY_WINDOWS ) )
|
if ( Os.isFamily( Os.FAMILY_WINDOWS ) )
|
||||||
|
@ -409,9 +388,7 @@ public class DefaultMaven
|
||||||
}
|
}
|
||||||
catch ( IOException e )
|
catch ( IOException e )
|
||||||
{
|
{
|
||||||
throw new MavenExecutionException(
|
throw new MavenExecutionException( "Unable to canonicalize file name " + moduleFile, e );
|
||||||
"Unable to canonicalize file name " + moduleFile,
|
|
||||||
e );
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -478,17 +455,11 @@ public class DefaultMaven
|
||||||
|
|
||||||
if ( request.useReactor() )
|
if ( request.useReactor() )
|
||||||
{
|
{
|
||||||
String includes = System.getProperty(
|
String includes = System.getProperty( "maven.reactor.includes", "**/" + POMv4 + ",**/" + RELEASE_POMv4 );
|
||||||
"maven.reactor.includes",
|
|
||||||
"**/" + POMv4 + ",**/" + RELEASE_POMv4 );
|
|
||||||
String excludes = System.getProperty(
|
|
||||||
"maven.reactor.excludes",
|
|
||||||
POMv4 + "," + RELEASE_POMv4 );
|
|
||||||
|
|
||||||
files = FileUtils.getFiles(
|
String excludes = System.getProperty( "maven.reactor.excludes", POMv4 + "," + RELEASE_POMv4 );
|
||||||
userDir,
|
|
||||||
includes,
|
files = FileUtils.getFiles( userDir, includes, excludes );
|
||||||
excludes );
|
|
||||||
|
|
||||||
filterOneProjectFilePerDirectory( files );
|
filterOneProjectFilePerDirectory( files );
|
||||||
|
|
||||||
|
@ -506,15 +477,11 @@ public class DefaultMaven
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
File projectFile = new File(
|
File projectFile = new File( userDir, RELEASE_POMv4 );
|
||||||
userDir,
|
|
||||||
RELEASE_POMv4 );
|
|
||||||
|
|
||||||
if ( !projectFile.exists() )
|
if ( !projectFile.exists() )
|
||||||
{
|
{
|
||||||
projectFile = new File(
|
projectFile = new File( userDir, POMv4 );
|
||||||
userDir,
|
|
||||||
POMv4 );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( projectFile.exists() )
|
if ( projectFile.exists() )
|
||||||
|
|
|
@ -92,6 +92,7 @@ public class DefaultExtensionManager
|
||||||
Parent originatingParent = originatingModel.getParent();
|
Parent originatingParent = originatingModel.getParent();
|
||||||
|
|
||||||
String groupId = originatingModel.getGroupId();
|
String groupId = originatingModel.getGroupId();
|
||||||
|
|
||||||
if ( ( groupId == null ) && ( originatingParent != null ) )
|
if ( ( groupId == null ) && ( originatingParent != null ) )
|
||||||
{
|
{
|
||||||
groupId = originatingParent.getGroupId();
|
groupId = originatingParent.getGroupId();
|
||||||
|
@ -100,6 +101,7 @@ public class DefaultExtensionManager
|
||||||
String artifactId = originatingModel.getArtifactId();
|
String artifactId = originatingModel.getArtifactId();
|
||||||
|
|
||||||
String version = originatingModel.getVersion();
|
String version = originatingModel.getVersion();
|
||||||
|
|
||||||
if ( ( version == null ) && ( originatingParent != null ) )
|
if ( ( version == null ) && ( originatingParent != null ) )
|
||||||
{
|
{
|
||||||
version = originatingParent.getVersion();
|
version = originatingParent.getVersion();
|
||||||
|
|
|
@ -291,7 +291,7 @@ public class DefaultPluginManager
|
||||||
plugin.getVersion() );
|
plugin.getVersion() );
|
||||||
MavenProject project = mavenProjectBuilder.buildFromRepository( artifact,
|
MavenProject project = mavenProjectBuilder.buildFromRepository( artifact,
|
||||||
remoteRepositories,
|
remoteRepositories,
|
||||||
localRepository, false );
|
localRepository );
|
||||||
// if we don't have the required Maven version, then ignore an update
|
// if we don't have the required Maven version, then ignore an update
|
||||||
if ( ( project.getPrerequisites() != null )
|
if ( ( project.getPrerequisites() != null )
|
||||||
&& ( project.getPrerequisites().getMaven() != null ) )
|
&& ( project.getPrerequisites().getMaven() != null ) )
|
||||||
|
|
|
@ -215,9 +215,8 @@ public class DefaultPluginVersionManager
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
artifact = artifactFactory.createProjectArtifact( groupId, artifactId, artifactVersion );
|
artifact = artifactFactory.createProjectArtifact( groupId, artifactId, artifactVersion );
|
||||||
pluginProject = mavenProjectBuilder.buildFromRepository( artifact,
|
|
||||||
project.getPluginArtifactRepositories(),
|
pluginProject = mavenProjectBuilder.buildFromRepository( artifact, project.getPluginArtifactRepositories(), localRepository );
|
||||||
localRepository, false );
|
|
||||||
}
|
}
|
||||||
catch ( ProjectBuildingException e )
|
catch ( ProjectBuildingException e )
|
||||||
{
|
{
|
||||||
|
|
|
@ -387,7 +387,7 @@ public class MavenEmbedder
|
||||||
public MavenProject readProject( File mavenProject )
|
public MavenProject readProject( File mavenProject )
|
||||||
throws ProjectBuildingException
|
throws ProjectBuildingException
|
||||||
{
|
{
|
||||||
return mavenProjectBuilder.build( mavenProject, request.getLocalRepository(), request.getProfileManager(), false );
|
return mavenProjectBuilder.build( mavenProject, request.getLocalRepository(), request.getProfileManager() );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -442,8 +442,7 @@ public class MavenEmbedder
|
||||||
projectBuildingResult = mavenProjectBuilder.buildWithDependencies(
|
projectBuildingResult = mavenProjectBuilder.buildWithDependencies(
|
||||||
new File( request.getPomFile() ),
|
new File( request.getPomFile() ),
|
||||||
request.getLocalRepository(),
|
request.getLocalRepository(),
|
||||||
request.getProfileManager(),
|
request.getProfileManager() );
|
||||||
request.getTransferListener() );
|
|
||||||
}
|
}
|
||||||
catch ( ProjectBuildingException e )
|
catch ( ProjectBuildingException e )
|
||||||
{
|
{
|
||||||
|
|
|
@ -134,15 +134,11 @@ public class DefaultMavenExecutionRequestPopulator
|
||||||
else if ( request.getBaseDirectory() != null )
|
else if ( request.getBaseDirectory() != null )
|
||||||
{
|
{
|
||||||
// Look for a release POM
|
// Look for a release POM
|
||||||
File pom = new File(
|
File pom = new File( request.getBaseDirectory(), Maven.RELEASE_POMv4 );
|
||||||
request.getBaseDirectory(),
|
|
||||||
Maven.RELEASE_POMv4 );
|
|
||||||
|
|
||||||
if ( !pom.exists() )
|
if ( !pom.exists() )
|
||||||
{
|
{
|
||||||
pom = new File(
|
pom = new File( request.getBaseDirectory(), Maven.POMv4 );
|
||||||
request.getBaseDirectory(),
|
|
||||||
Maven.POMv4 );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
request.setPomFile( pom.getAbsolutePath() );
|
request.setPomFile( pom.getAbsolutePath() );
|
||||||
|
|
|
@ -62,12 +62,10 @@ public class DefaultProfileAdvisor
|
||||||
|
|
||||||
private PlexusContainer container;
|
private PlexusContainer container;
|
||||||
|
|
||||||
public List applyActivatedProfiles( Model model, File projectDir, List explicitlyActiveIds,
|
public List applyActivatedProfiles( Model model, File projectDir, List explicitlyActiveIds, List explicitlyInactiveIds )
|
||||||
List explicitlyInactiveIds )
|
|
||||||
throws ProjectBuildingException
|
throws ProjectBuildingException
|
||||||
{
|
{
|
||||||
ProfileManager profileManager = buildProfileManager( model, projectDir, explicitlyActiveIds,
|
ProfileManager profileManager = buildProfileManager( model, projectDir, explicitlyActiveIds, explicitlyInactiveIds );
|
||||||
explicitlyInactiveIds );
|
|
||||||
|
|
||||||
return applyActivatedProfiles( model, projectDir, profileManager );
|
return applyActivatedProfiles( model, projectDir, profileManager );
|
||||||
}
|
}
|
||||||
|
@ -123,13 +121,13 @@ public class DefaultProfileAdvisor
|
||||||
return activeProfiles;
|
return activeProfiles;
|
||||||
}
|
}
|
||||||
|
|
||||||
private ProfileManager buildProfileManager( Model model, File projectDir, List explicitlyActiveIds,
|
private ProfileManager buildProfileManager( Model model, File projectDir, List explicitlyActiveIds, List explicitlyInactiveIds )
|
||||||
List explicitlyInactiveIds )
|
|
||||||
throws ProjectBuildingException
|
throws ProjectBuildingException
|
||||||
{
|
{
|
||||||
ProfileManager profileManager = new DefaultProfileManager( container );
|
ProfileManager profileManager = new DefaultProfileManager( container );
|
||||||
|
|
||||||
profileManager.explicitlyActivate( explicitlyActiveIds );
|
profileManager.explicitlyActivate( explicitlyActiveIds );
|
||||||
|
|
||||||
profileManager.explicitlyDeactivate( explicitlyInactiveIds );
|
profileManager.explicitlyDeactivate( explicitlyInactiveIds );
|
||||||
|
|
||||||
profileManager.addProfiles( model.getProfiles() );
|
profileManager.addProfiles( model.getProfiles() );
|
||||||
|
@ -146,8 +144,7 @@ public class DefaultProfileAdvisor
|
||||||
List explicitlyActiveIds, List explicitlyInactiveIds )
|
List explicitlyActiveIds, List explicitlyInactiveIds )
|
||||||
throws ProjectBuildingException
|
throws ProjectBuildingException
|
||||||
{
|
{
|
||||||
ProfileManager profileManager = buildProfileManager( model, projectDir, explicitlyActiveIds,
|
ProfileManager profileManager = buildProfileManager( model, projectDir, explicitlyActiveIds, explicitlyInactiveIds );
|
||||||
explicitlyInactiveIds );
|
|
||||||
|
|
||||||
List activeExternalProfiles;
|
List activeExternalProfiles;
|
||||||
{
|
{
|
||||||
|
@ -171,7 +168,7 @@ public class DefaultProfileAdvisor
|
||||||
{
|
{
|
||||||
Repository mavenRepo = (Repository) repoIterator.next();
|
Repository mavenRepo = (Repository) repoIterator.next();
|
||||||
|
|
||||||
ArtifactRepository artifactRepo = null;
|
ArtifactRepository artifactRepo;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
artifactRepo = mavenTools.buildArtifactRepository( mavenRepo );
|
artifactRepo = mavenTools.buildArtifactRepository( mavenRepo );
|
||||||
|
|
|
@ -25,7 +25,6 @@ import org.apache.maven.artifact.ArtifactStatus;
|
||||||
import org.apache.maven.artifact.ArtifactUtils;
|
import org.apache.maven.artifact.ArtifactUtils;
|
||||||
import org.apache.maven.artifact.InvalidRepositoryException;
|
import org.apache.maven.artifact.InvalidRepositoryException;
|
||||||
import org.apache.maven.artifact.factory.ArtifactFactory;
|
import org.apache.maven.artifact.factory.ArtifactFactory;
|
||||||
import org.apache.maven.artifact.manager.WagonManager;
|
|
||||||
import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
|
import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
|
||||||
import org.apache.maven.artifact.repository.ArtifactRepository;
|
import org.apache.maven.artifact.repository.ArtifactRepository;
|
||||||
import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
|
import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
|
||||||
|
@ -52,6 +51,7 @@ import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
|
||||||
import org.apache.maven.profiles.MavenProfilesBuilder;
|
import org.apache.maven.profiles.MavenProfilesBuilder;
|
||||||
import org.apache.maven.profiles.ProfileManager;
|
import org.apache.maven.profiles.ProfileManager;
|
||||||
import org.apache.maven.profiles.activation.ProfileActivationException;
|
import org.apache.maven.profiles.activation.ProfileActivationException;
|
||||||
|
import org.apache.maven.profiles.build.ProfileAdvisor;
|
||||||
import org.apache.maven.project.artifact.InvalidDependencyVersionException;
|
import org.apache.maven.project.artifact.InvalidDependencyVersionException;
|
||||||
import org.apache.maven.project.build.ProjectBuildCache;
|
import org.apache.maven.project.build.ProjectBuildCache;
|
||||||
import org.apache.maven.project.build.ProjectBuildContext;
|
import org.apache.maven.project.build.ProjectBuildContext;
|
||||||
|
@ -59,7 +59,6 @@ import org.apache.maven.project.build.model.DefaultModelLineage;
|
||||||
import org.apache.maven.project.build.model.ModelLineage;
|
import org.apache.maven.project.build.model.ModelLineage;
|
||||||
import org.apache.maven.project.build.model.ModelLineageBuilder;
|
import org.apache.maven.project.build.model.ModelLineageBuilder;
|
||||||
import org.apache.maven.project.build.model.ModelLineageIterator;
|
import org.apache.maven.project.build.model.ModelLineageIterator;
|
||||||
import org.apache.maven.profiles.build.ProfileAdvisor;
|
|
||||||
import org.apache.maven.project.inheritance.ModelInheritanceAssembler;
|
import org.apache.maven.project.inheritance.ModelInheritanceAssembler;
|
||||||
import org.apache.maven.project.injection.ModelDefaultsInjector;
|
import org.apache.maven.project.injection.ModelDefaultsInjector;
|
||||||
import org.apache.maven.project.interpolation.ModelInterpolationException;
|
import org.apache.maven.project.interpolation.ModelInterpolationException;
|
||||||
|
@ -67,7 +66,6 @@ import org.apache.maven.project.interpolation.ModelInterpolator;
|
||||||
import org.apache.maven.project.path.PathTranslator;
|
import org.apache.maven.project.path.PathTranslator;
|
||||||
import org.apache.maven.project.validation.ModelValidationResult;
|
import org.apache.maven.project.validation.ModelValidationResult;
|
||||||
import org.apache.maven.project.validation.ModelValidator;
|
import org.apache.maven.project.validation.ModelValidator;
|
||||||
import org.apache.maven.wagon.events.TransferListener;
|
|
||||||
import org.codehaus.plexus.PlexusConstants;
|
import org.codehaus.plexus.PlexusConstants;
|
||||||
import org.codehaus.plexus.PlexusContainer;
|
import org.codehaus.plexus.PlexusContainer;
|
||||||
import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
|
import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
|
||||||
|
@ -141,7 +139,9 @@ Notes
|
||||||
*/
|
*/
|
||||||
public class DefaultMavenProjectBuilder
|
public class DefaultMavenProjectBuilder
|
||||||
extends AbstractLogEnabled
|
extends AbstractLogEnabled
|
||||||
implements MavenProjectBuilder, Initializable, Contextualizable
|
implements MavenProjectBuilder,
|
||||||
|
Initializable,
|
||||||
|
Contextualizable
|
||||||
{
|
{
|
||||||
protected PlexusContainer container;
|
protected PlexusContainer container;
|
||||||
|
|
||||||
|
@ -174,16 +174,6 @@ public class DefaultMavenProjectBuilder
|
||||||
|
|
||||||
private MavenTools mavenTools;
|
private MavenTools mavenTools;
|
||||||
|
|
||||||
// ----------------------------------------------------------------------
|
|
||||||
// I am making this available for use with a new method that takes a
|
|
||||||
// a monitor wagon monitor as a parameter so that tools can use the
|
|
||||||
// methods here and receive callbacks. MNG-1015
|
|
||||||
//
|
|
||||||
// Probably no longer relevant with wagonManager/wagonManager change - joakime
|
|
||||||
// ----------------------------------------------------------------------
|
|
||||||
|
|
||||||
private WagonManager wagonManager;
|
|
||||||
|
|
||||||
public static final String MAVEN_MODEL_VERSION = "4.0.0";
|
public static final String MAVEN_MODEL_VERSION = "4.0.0";
|
||||||
|
|
||||||
public void initialize()
|
public void initialize()
|
||||||
|
@ -200,28 +190,24 @@ public class DefaultMavenProjectBuilder
|
||||||
ProfileManager profileManager )
|
ProfileManager profileManager )
|
||||||
throws ProjectBuildingException
|
throws ProjectBuildingException
|
||||||
{
|
{
|
||||||
return buildFromSourceFileInternal( projectDescriptor, localRepository, profileManager, true );
|
return buildFromSourceFileInternal( projectDescriptor, localRepository, profileManager );
|
||||||
}
|
}
|
||||||
|
|
||||||
public MavenProject build( File projectDescriptor,
|
/** @deprecated */
|
||||||
ArtifactRepository localRepository,
|
|
||||||
ProfileManager profileManager,
|
|
||||||
boolean checkDistributionManagementStatus )
|
|
||||||
throws ProjectBuildingException
|
|
||||||
{
|
|
||||||
return buildFromSourceFileInternal( projectDescriptor, localRepository, profileManager, checkDistributionManagementStatus );
|
|
||||||
}
|
|
||||||
|
|
||||||
// jvz:note
|
|
||||||
// When asked for something from the repository are we getting it from the reactor? Yes, when using this call
|
|
||||||
// we are assuming that the reactor has been run and we have collected the projects required to satisfy it0042
|
|
||||||
// which means the projects in the reactor are required for finding classes in <project>/target/classes. Not
|
|
||||||
// sure this is ideal. I remove all caching from the builder and all reactor related ITs which assume
|
|
||||||
// access to simbling project resources failed.
|
|
||||||
public MavenProject buildFromRepository( Artifact artifact,
|
public MavenProject buildFromRepository( Artifact artifact,
|
||||||
List remoteArtifactRepositories,
|
List remoteArtifactRepositories,
|
||||||
ArtifactRepository localRepository,
|
ArtifactRepository localRepository,
|
||||||
boolean allowStubModel )
|
boolean allowStub )
|
||||||
|
throws ProjectBuildingException
|
||||||
|
|
||||||
|
{
|
||||||
|
return buildFromRepository( artifact, remoteArtifactRepositories, localRepository );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public MavenProject buildFromRepository( Artifact artifact,
|
||||||
|
List remoteArtifactRepositories,
|
||||||
|
ArtifactRepository localRepository )
|
||||||
throws ProjectBuildingException
|
throws ProjectBuildingException
|
||||||
{
|
{
|
||||||
ProjectBuildCache projectBuildCache = ProjectBuildCache.read( buildContextManager );
|
ProjectBuildCache projectBuildCache = ProjectBuildCache.read( buildContextManager );
|
||||||
|
@ -233,19 +219,11 @@ public class DefaultMavenProjectBuilder
|
||||||
return project;
|
return project;
|
||||||
}
|
}
|
||||||
|
|
||||||
Model model = findModelFromRepository( artifact, remoteArtifactRepositories, localRepository, allowStubModel );
|
Model model = findModelFromRepository( artifact, remoteArtifactRepositories, localRepository );
|
||||||
|
|
||||||
return buildInternal( "Artifact [" + artifact + "]", model, localRepository, remoteArtifactRepositories, null, null, false );
|
return buildInternal( "Artifact [" + artifact + "]", model, localRepository, remoteArtifactRepositories, null, null, false );
|
||||||
}
|
}
|
||||||
|
|
||||||
public MavenProject buildFromRepository( Artifact artifact,
|
|
||||||
List remoteArtifactRepositories,
|
|
||||||
ArtifactRepository localRepository )
|
|
||||||
throws ProjectBuildingException
|
|
||||||
{
|
|
||||||
return buildFromRepository( artifact, remoteArtifactRepositories, localRepository, true );
|
|
||||||
}
|
|
||||||
|
|
||||||
private MavenProject superProject;
|
private MavenProject superProject;
|
||||||
|
|
||||||
public MavenProject buildStandaloneSuperProject()
|
public MavenProject buildStandaloneSuperProject()
|
||||||
|
@ -289,19 +267,7 @@ public class DefaultMavenProjectBuilder
|
||||||
ProfileManager profileManager )
|
ProfileManager profileManager )
|
||||||
throws ProjectBuildingException
|
throws ProjectBuildingException
|
||||||
{
|
{
|
||||||
return buildWithDependencies( projectDescriptor, localRepository, profileManager, null );
|
MavenProject project = build( projectDescriptor, localRepository, profileManager );
|
||||||
}
|
|
||||||
|
|
||||||
// note:jvz This was added for the embedder.
|
|
||||||
|
|
||||||
/** @todo move to metadatasource itself? */
|
|
||||||
public MavenProjectBuildingResult buildWithDependencies( File projectDescriptor,
|
|
||||||
ArtifactRepository localRepository,
|
|
||||||
ProfileManager profileManager,
|
|
||||||
TransferListener transferListener )
|
|
||||||
throws ProjectBuildingException
|
|
||||||
{
|
|
||||||
MavenProject project = build( projectDescriptor, localRepository, profileManager, false );
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
// Typically when the project builder is being used from maven proper
|
// Typically when the project builder is being used from maven proper
|
||||||
|
@ -335,11 +301,6 @@ public class DefaultMavenProjectBuilder
|
||||||
e.getMessage(), e );
|
e.getMessage(), e );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( transferListener != null )
|
|
||||||
{
|
|
||||||
wagonManager.setDownloadMonitor( transferListener );
|
|
||||||
}
|
|
||||||
|
|
||||||
ArtifactResolutionRequest request = new ArtifactResolutionRequest()
|
ArtifactResolutionRequest request = new ArtifactResolutionRequest()
|
||||||
.setArtifact( projectArtifact )
|
.setArtifact( projectArtifact )
|
||||||
.setArtifactDependencies( project.getDependencyArtifacts() )
|
.setArtifactDependencies( project.getDependencyArtifacts() )
|
||||||
|
@ -377,8 +338,7 @@ public class DefaultMavenProjectBuilder
|
||||||
}
|
}
|
||||||
|
|
||||||
private Map createManagedVersionMap( String projectId,
|
private Map createManagedVersionMap( String projectId,
|
||||||
DependencyManagement dependencyManagement,
|
DependencyManagement dependencyManagement )
|
||||||
MavenProject parent )
|
|
||||||
throws ProjectBuildingException
|
throws ProjectBuildingException
|
||||||
{
|
{
|
||||||
Map map = null;
|
Map map = null;
|
||||||
|
@ -399,10 +359,10 @@ public class DefaultMavenProjectBuilder
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
VersionRange versionRange = VersionRange.createFromVersionSpec( d.getVersion() );
|
VersionRange versionRange = VersionRange.createFromVersionSpec( d.getVersion() );
|
||||||
Artifact artifact = artifactFactory.createDependencyArtifact( d.getGroupId(), d.getArtifactId(),
|
|
||||||
versionRange, d.getType(),
|
Artifact artifact = artifactFactory.createDependencyArtifact( d.getGroupId(), d.getArtifactId(), versionRange, d.getType(),
|
||||||
d.getClassifier(), d.getScope(),
|
d.getClassifier(), d.getScope(), d.isOptional() );
|
||||||
d.isOptional() );
|
|
||||||
if ( getLogger().isDebugEnabled() )
|
if ( getLogger().isDebugEnabled() )
|
||||||
{
|
{
|
||||||
getLogger().debug( " " + artifact );
|
getLogger().debug( " " + artifact );
|
||||||
|
@ -411,22 +371,27 @@ public class DefaultMavenProjectBuilder
|
||||||
// If the dependencyManagement section listed exclusions,
|
// If the dependencyManagement section listed exclusions,
|
||||||
// add them to the managed artifacts here so that transitive
|
// add them to the managed artifacts here so that transitive
|
||||||
// dependencies will be excluded if necessary.
|
// dependencies will be excluded if necessary.
|
||||||
|
|
||||||
if ( ( null != d.getExclusions() ) && !d.getExclusions().isEmpty() )
|
if ( ( null != d.getExclusions() ) && !d.getExclusions().isEmpty() )
|
||||||
{
|
{
|
||||||
List exclusions = new ArrayList();
|
List exclusions = new ArrayList();
|
||||||
Iterator exclItr = d.getExclusions().iterator();
|
|
||||||
while ( exclItr.hasNext() )
|
for ( Iterator j = d.getExclusions().iterator(); j.hasNext(); )
|
||||||
{
|
{
|
||||||
Exclusion e = (Exclusion) exclItr.next();
|
Exclusion e = (Exclusion) j.next();
|
||||||
|
|
||||||
exclusions.add( e.getGroupId() + ":" + e.getArtifactId() );
|
exclusions.add( e.getGroupId() + ":" + e.getArtifactId() );
|
||||||
}
|
}
|
||||||
|
|
||||||
ExcludesArtifactFilter eaf = new ExcludesArtifactFilter( exclusions );
|
ExcludesArtifactFilter eaf = new ExcludesArtifactFilter( exclusions );
|
||||||
|
|
||||||
artifact.setDependencyFilter( eaf );
|
artifact.setDependencyFilter( eaf );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
artifact.setDependencyFilter( null );
|
artifact.setDependencyFilter( null );
|
||||||
}
|
}
|
||||||
|
|
||||||
map.put( d.getManagementKey(), artifact );
|
map.put( d.getManagementKey(), artifact );
|
||||||
}
|
}
|
||||||
catch ( InvalidVersionSpecificationException e )
|
catch ( InvalidVersionSpecificationException e )
|
||||||
|
@ -445,15 +410,16 @@ public class DefaultMavenProjectBuilder
|
||||||
|
|
||||||
private MavenProject buildFromSourceFileInternal( File projectDescriptor,
|
private MavenProject buildFromSourceFileInternal( File projectDescriptor,
|
||||||
ArtifactRepository localRepository,
|
ArtifactRepository localRepository,
|
||||||
ProfileManager profileManager,
|
ProfileManager profileManager )
|
||||||
boolean checkDistributionManagementStatus )
|
|
||||||
throws ProjectBuildingException
|
throws ProjectBuildingException
|
||||||
{
|
{
|
||||||
|
/*
|
||||||
// TODO: Remove this once we have build-context stuff working...
|
// TODO: Remove this once we have build-context stuff working...
|
||||||
if ( !container.getContext().contains( "SystemProperties" ) )
|
if ( !container.getContext().contains( "SystemProperties" ) )
|
||||||
{
|
{
|
||||||
container.addContextValue( "SystemProperties", System.getProperties() );
|
container.addContextValue( "SystemProperties", System.getProperties() );
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
Model model = readModel( "unknown", projectDescriptor, STRICT_MODEL_PARSING );
|
Model model = readModel( "unknown", projectDescriptor, STRICT_MODEL_PARSING );
|
||||||
|
|
||||||
|
@ -465,29 +431,12 @@ public class DefaultMavenProjectBuilder
|
||||||
profileManager,
|
profileManager,
|
||||||
STRICT_MODEL_PARSING );
|
STRICT_MODEL_PARSING );
|
||||||
|
|
||||||
/*
|
|
||||||
|
|
||||||
MNG-3178: What is this actually for as we're not deploying this anymore.
|
|
||||||
|
|
||||||
if ( checkDistributionManagementStatus )
|
|
||||||
{
|
|
||||||
if ( ( project.getDistributionManagement() != null ) && ( project.getDistributionManagement().getStatus() != null ) )
|
|
||||||
{
|
|
||||||
String projectId = safeVersionlessKey( project.getGroupId(), project.getArtifactId() );
|
|
||||||
|
|
||||||
throw new ProjectBuildingException( projectId,
|
|
||||||
"Invalid project file: distribution status must not be specified for a project outside of the repository" );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
return project;
|
return project;
|
||||||
}
|
}
|
||||||
|
|
||||||
private Model findModelFromRepository( Artifact artifact,
|
private Model findModelFromRepository( Artifact artifact,
|
||||||
List remoteArtifactRepositories,
|
List remoteArtifactRepositories,
|
||||||
ArtifactRepository localRepository,
|
ArtifactRepository localRepository )
|
||||||
boolean allowStubModel )
|
|
||||||
throws ProjectBuildingException
|
throws ProjectBuildingException
|
||||||
{
|
{
|
||||||
Artifact projectArtifact;
|
Artifact projectArtifact;
|
||||||
|
@ -552,18 +501,9 @@ public class DefaultMavenProjectBuilder
|
||||||
throw new ProjectBuildingException( projectId, "Error getting POM for '" + projectId + "' from the repository: " + e.getMessage(), e );
|
throw new ProjectBuildingException( projectId, "Error getting POM for '" + projectId + "' from the repository: " + e.getMessage(), e );
|
||||||
}
|
}
|
||||||
catch ( ArtifactNotFoundException e )
|
catch ( ArtifactNotFoundException e )
|
||||||
{
|
|
||||||
if ( allowStubModel )
|
|
||||||
{
|
|
||||||
getLogger().debug( "Artifact not found - using stub model: " + e.getMessage() );
|
|
||||||
|
|
||||||
model = createStubModel( projectArtifact );
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
throw new ProjectBuildingException( projectId, "POM '" + projectId + "' not found in repository: " + e.getMessage(), e );
|
throw new ProjectBuildingException( projectId, "POM '" + projectId + "' not found in repository: " + e.getMessage(), e );
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
return model;
|
return model;
|
||||||
}
|
}
|
||||||
|
@ -608,33 +548,6 @@ public class DefaultMavenProjectBuilder
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// jvz:note
|
|
||||||
// This is used when requested artifacts do not have an associated POM. This is for the case where we are
|
|
||||||
// using an m1 repo where the only thing required to be present are the JAR files.
|
|
||||||
private Model createStubModel( Artifact projectArtifact )
|
|
||||||
{
|
|
||||||
getLogger().debug( "Using defaults for missing POM " + projectArtifact );
|
|
||||||
|
|
||||||
Model model = new Model();
|
|
||||||
|
|
||||||
model.setModelVersion( "4.0.0" );
|
|
||||||
|
|
||||||
model.setArtifactId( projectArtifact.getArtifactId() );
|
|
||||||
|
|
||||||
model.setGroupId( projectArtifact.getGroupId() );
|
|
||||||
|
|
||||||
model.setVersion( projectArtifact.getVersion() );
|
|
||||||
|
|
||||||
// TODO: not correct in some instances
|
|
||||||
model.setPackaging( projectArtifact.getType() );
|
|
||||||
|
|
||||||
model.setDistributionManagement( new DistributionManagement() );
|
|
||||||
|
|
||||||
model.getDistributionManagement().setStatus( ArtifactStatus.GENERATED.toString() );
|
|
||||||
|
|
||||||
return model;
|
|
||||||
}
|
|
||||||
|
|
||||||
// jvz:note
|
// jvz:note
|
||||||
// We've got a mixture of things going in the USD and from the repository, sometimes the descriptor
|
// We've got a mixture of things going in the USD and from the repository, sometimes the descriptor
|
||||||
// is a real file and sometimes null which makes things confusing.
|
// is a real file and sometimes null which makes things confusing.
|
||||||
|
@ -661,6 +574,7 @@ public class DefaultMavenProjectBuilder
|
||||||
String projectId = safeVersionlessKey( model.getGroupId(), model.getArtifactId() );
|
String projectId = safeVersionlessKey( model.getGroupId(), model.getArtifactId() );
|
||||||
|
|
||||||
List explicitlyActive;
|
List explicitlyActive;
|
||||||
|
|
||||||
List explicitlyInactive;
|
List explicitlyInactive;
|
||||||
|
|
||||||
if ( externalProfileManager != null )
|
if ( externalProfileManager != null )
|
||||||
|
@ -676,11 +590,13 @@ public class DefaultMavenProjectBuilder
|
||||||
}
|
}
|
||||||
|
|
||||||
explicitlyActive = externalProfileManager.getExplicitlyActivatedIds();
|
explicitlyActive = externalProfileManager.getExplicitlyActivatedIds();
|
||||||
|
|
||||||
explicitlyInactive = externalProfileManager.getExplicitlyDeactivatedIds();
|
explicitlyInactive = externalProfileManager.getExplicitlyDeactivatedIds();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
explicitlyActive = Collections.EMPTY_LIST;
|
explicitlyActive = Collections.EMPTY_LIST;
|
||||||
|
|
||||||
explicitlyInactive = Collections.EMPTY_LIST;
|
explicitlyInactive = Collections.EMPTY_LIST;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -696,17 +612,11 @@ public class DefaultMavenProjectBuilder
|
||||||
|
|
||||||
Model originalModel = ModelUtils.cloneModel( model );
|
Model originalModel = ModelUtils.cloneModel( model );
|
||||||
|
|
||||||
MavenProject project = null;
|
MavenProject project;
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
project = assembleLineage( model,
|
project = assembleLineage( model, lineage, localRepository, projectDir, aggregatedRemoteWagonRepositories, externalProfileManager, strict );
|
||||||
lineage,
|
|
||||||
localRepository,
|
|
||||||
projectDir,
|
|
||||||
parentSearchRepositories,
|
|
||||||
aggregatedRemoteWagonRepositories,
|
|
||||||
externalProfileManager,
|
|
||||||
strict );
|
|
||||||
}
|
}
|
||||||
catch ( InvalidRepositoryException e )
|
catch ( InvalidRepositoryException e )
|
||||||
{
|
{
|
||||||
|
@ -734,7 +644,9 @@ public class DefaultMavenProjectBuilder
|
||||||
}
|
}
|
||||||
catch ( IOException e )
|
catch ( IOException e )
|
||||||
{
|
{
|
||||||
getLogger().debug( "Cannot determine whether " + currentProject.getId() + " is a module of " + previousProject.getId() + ". Reason: " + e.getMessage(), e );
|
getLogger().debug(
|
||||||
|
"Cannot determine whether " + currentProject.getId() + " is a module of " + previousProject.getId() + ". Reason: " + e.getMessage(),
|
||||||
|
e );
|
||||||
}
|
}
|
||||||
|
|
||||||
modelInheritanceAssembler.assembleModelInheritance( current, previous, pathAdjustment );
|
modelInheritanceAssembler.assembleModelInheritance( current, previous, pathAdjustment );
|
||||||
|
@ -760,7 +672,7 @@ public class DefaultMavenProjectBuilder
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
project = processProjectLogic( pomLocation, project, externalProfileManager, projectDir, strict );
|
project = processProjectLogic( pomLocation, project, projectDir, strict );
|
||||||
}
|
}
|
||||||
catch ( ModelInterpolationException e )
|
catch ( ModelInterpolationException e )
|
||||||
{
|
{
|
||||||
|
@ -772,14 +684,13 @@ public class DefaultMavenProjectBuilder
|
||||||
}
|
}
|
||||||
|
|
||||||
ProjectBuildCache projectBuildCache = ProjectBuildCache.read( buildContextManager );
|
ProjectBuildCache projectBuildCache = ProjectBuildCache.read( buildContextManager );
|
||||||
|
|
||||||
projectBuildCache.cacheProject( project );
|
projectBuildCache.cacheProject( project );
|
||||||
|
|
||||||
projectBuildCache.store( buildContextManager );
|
projectBuildCache.store( buildContextManager );
|
||||||
|
|
||||||
// jvz:note
|
|
||||||
// this only happens if we are building from a source file
|
|
||||||
if ( projectDescriptor != null )
|
if ( projectDescriptor != null )
|
||||||
{
|
{
|
||||||
// Only translate the base directory for files in the source tree
|
|
||||||
pathTranslator.alignToBaseDirectory( project.getModel(), projectDescriptor.getParentFile() );
|
pathTranslator.alignToBaseDirectory( project.getModel(), projectDescriptor.getParentFile() );
|
||||||
|
|
||||||
Build build = project.getBuild();
|
Build build = project.getBuild();
|
||||||
|
@ -807,8 +718,7 @@ public class DefaultMavenProjectBuilder
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
project.setManagedVersionMap( createManagedVersionMap( projectId, project.getDependencyManagement(),
|
project.setManagedVersionMap( createManagedVersionMap( projectId, project.getDependencyManagement() ) );
|
||||||
project.getParent() ) );
|
|
||||||
|
|
||||||
return project;
|
return project;
|
||||||
}
|
}
|
||||||
|
@ -851,9 +761,7 @@ public class DefaultMavenProjectBuilder
|
||||||
List explicitlyInactive )
|
List explicitlyInactive )
|
||||||
throws ProjectBuildingException
|
throws ProjectBuildingException
|
||||||
{
|
{
|
||||||
Set reposFromProfiles = profileAdvisor.getArtifactRepositoriesFromActiveProfiles( model, projectDir,
|
Set reposFromProfiles = profileAdvisor.getArtifactRepositoriesFromActiveProfiles( model, projectDir, explicitlyActive, explicitlyInactive );
|
||||||
explicitlyActive,
|
|
||||||
explicitlyInactive );
|
|
||||||
|
|
||||||
if ( ( reposFromProfiles != null ) && !reposFromProfiles.isEmpty() )
|
if ( ( reposFromProfiles != null ) && !reposFromProfiles.isEmpty() )
|
||||||
{
|
{
|
||||||
|
@ -861,6 +769,7 @@ public class DefaultMavenProjectBuilder
|
||||||
}
|
}
|
||||||
|
|
||||||
List modelRepos = model.getRepositories();
|
List modelRepos = model.getRepositories();
|
||||||
|
|
||||||
if ( ( modelRepos != null ) && !modelRepos.isEmpty() )
|
if ( ( modelRepos != null ) && !modelRepos.isEmpty() )
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
@ -920,7 +829,6 @@ public class DefaultMavenProjectBuilder
|
||||||
*/
|
*/
|
||||||
private MavenProject processProjectLogic( String pomLocation,
|
private MavenProject processProjectLogic( String pomLocation,
|
||||||
MavenProject project,
|
MavenProject project,
|
||||||
ProfileManager profileMgr,
|
|
||||||
File projectDir,
|
File projectDir,
|
||||||
boolean strict )
|
boolean strict )
|
||||||
throws ProjectBuildingException, ModelInterpolationException, InvalidRepositoryException
|
throws ProjectBuildingException, ModelInterpolationException, InvalidRepositoryException
|
||||||
|
@ -1029,29 +937,31 @@ public class DefaultMavenProjectBuilder
|
||||||
LinkedList lineage,
|
LinkedList lineage,
|
||||||
ArtifactRepository localRepository,
|
ArtifactRepository localRepository,
|
||||||
File projectDir,
|
File projectDir,
|
||||||
List parentSearchRepositories,
|
|
||||||
Set aggregatedRemoteWagonRepositories,
|
Set aggregatedRemoteWagonRepositories,
|
||||||
ProfileManager externalProfileManager,
|
ProfileManager externalProfileManager,
|
||||||
boolean strict )
|
boolean strict )
|
||||||
throws ProjectBuildingException, InvalidRepositoryException
|
throws ProjectBuildingException, InvalidRepositoryException
|
||||||
{
|
{
|
||||||
ModelLineage modelLineage = new DefaultModelLineage();
|
ModelLineage modelLineage = new DefaultModelLineage();
|
||||||
|
|
||||||
modelLineage.setOrigin( model, new File( projectDir, "pom.xml" ), new ArrayList( aggregatedRemoteWagonRepositories ) );
|
modelLineage.setOrigin( model, new File( projectDir, "pom.xml" ), new ArrayList( aggregatedRemoteWagonRepositories ) );
|
||||||
|
|
||||||
// strict means "no stubs", so we invert it here for the allowStubs parameter.
|
|
||||||
modelLineageBuilder.resumeBuildingModelLineage( modelLineage, localRepository, externalProfileManager, !strict );
|
modelLineageBuilder.resumeBuildingModelLineage( modelLineage, localRepository, externalProfileManager, !strict );
|
||||||
|
|
||||||
ProjectBuildContext projectContext = ProjectBuildContext.getProjectBuildContext( buildContextManager, true );
|
ProjectBuildContext projectContext = ProjectBuildContext.getProjectBuildContext( buildContextManager, true );
|
||||||
|
|
||||||
projectContext.setModelLineage( modelLineage );
|
projectContext.setModelLineage( modelLineage );
|
||||||
|
|
||||||
projectContext.store( buildContextManager );
|
projectContext.store( buildContextManager );
|
||||||
|
|
||||||
List explicitlyActive;
|
List explicitlyActive;
|
||||||
|
|
||||||
List explicitlyInactive;
|
List explicitlyInactive;
|
||||||
|
|
||||||
if ( externalProfileManager != null )
|
if ( externalProfileManager != null )
|
||||||
{
|
{
|
||||||
explicitlyActive = externalProfileManager.getExplicitlyActivatedIds();
|
explicitlyActive = externalProfileManager.getExplicitlyActivatedIds();
|
||||||
|
|
||||||
explicitlyInactive = externalProfileManager.getExplicitlyDeactivatedIds();
|
explicitlyInactive = externalProfileManager.getExplicitlyDeactivatedIds();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
@ -58,56 +58,34 @@ public interface MavenProjectBuilder
|
||||||
|
|
||||||
boolean STRICT_MODEL_PARSING = true;
|
boolean STRICT_MODEL_PARSING = true;
|
||||||
|
|
||||||
MavenProject build( File project, ArtifactRepository localRepository, ProfileManager globalProfileManager )
|
MavenProject build( File project,
|
||||||
throws ProjectBuildingException;
|
ArtifactRepository localRepository,
|
||||||
|
|
||||||
MavenProject build( File project, ArtifactRepository localRepository, ProfileManager globalProfileManager,
|
|
||||||
boolean checkDistributionManagementStatus )
|
|
||||||
throws ProjectBuildingException;
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------
|
|
||||||
// These methods are used by the MavenEmbedder
|
|
||||||
// ----------------------------------------------------------------------
|
|
||||||
|
|
||||||
MavenProjectBuildingResult buildWithDependencies( File project, ArtifactRepository localRepository,
|
|
||||||
ProfileManager globalProfileManager, TransferListener transferListener )
|
|
||||||
throws ProjectBuildingException;
|
|
||||||
|
|
||||||
MavenProjectBuildingResult buildWithDependencies( File project, ArtifactRepository localRepository,
|
|
||||||
ProfileManager globalProfileManager )
|
ProfileManager globalProfileManager )
|
||||||
throws ProjectBuildingException;
|
throws ProjectBuildingException;
|
||||||
|
|
||||||
// ----------------------------------------------------------------------
|
|
||||||
//
|
|
||||||
// ----------------------------------------------------------------------
|
|
||||||
|
|
||||||
/**
|
MavenProjectBuildingResult buildWithDependencies( File project,
|
||||||
* Build the artifact from the local repository, resolving it if necessary.
|
ArtifactRepository localRepository,
|
||||||
*
|
ProfileManager globalProfileManager )
|
||||||
* @param artifact the artifact description
|
throws ProjectBuildingException;
|
||||||
* @param localRepository the local repository
|
|
||||||
* @param remoteArtifactRepositories the remote repository list
|
MavenProject buildFromRepository( Artifact artifact,
|
||||||
* @return the built project
|
List remoteArtifactRepositories,
|
||||||
* @throws ProjectBuildingException
|
|
||||||
*/
|
|
||||||
MavenProject buildFromRepository( Artifact artifact, List remoteArtifactRepositories,
|
|
||||||
ArtifactRepository localRepository )
|
ArtifactRepository localRepository )
|
||||||
throws ProjectBuildingException;
|
throws ProjectBuildingException;
|
||||||
|
|
||||||
/**
|
/** @deprecated We do not want to allow projects to not have POMs. Maven 1.x repositories be damned. */
|
||||||
* Build the artifact from the local repository, resolving it if necessary.
|
MavenProject buildFromRepository( Artifact artifact,
|
||||||
*
|
List remoteArtifactRepositories,
|
||||||
* @param artifact the artifact description
|
ArtifactRepository localRepository,
|
||||||
* @param localRepository the local repository
|
boolean allowStub )
|
||||||
* @param remoteArtifactRepositories the remote repository list
|
|
||||||
* @param allowStubModel return a stub if the POM is not found
|
|
||||||
* @return the built project
|
|
||||||
* @throws ProjectBuildingException
|
|
||||||
*/
|
|
||||||
MavenProject buildFromRepository( Artifact artifact, List remoteArtifactRepositories,
|
|
||||||
ArtifactRepository localRepository, boolean allowStubModel )
|
|
||||||
throws ProjectBuildingException;
|
throws ProjectBuildingException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
* @throws ProjectBuildingException
|
||||||
|
*/
|
||||||
MavenProject buildStandaloneSuperProject()
|
MavenProject buildStandaloneSuperProject()
|
||||||
throws ProjectBuildingException;
|
throws ProjectBuildingException;
|
||||||
}
|
}
|
||||||
|
|
|
@ -112,8 +112,7 @@ public class MavenMetadataSource
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
project = mavenProjectBuilder.buildFromRepository( pomArtifact, remoteRepositories, localRepository,
|
project = mavenProjectBuilder.buildFromRepository( pomArtifact, remoteRepositories, localRepository );
|
||||||
true );
|
|
||||||
}
|
}
|
||||||
catch ( InvalidProjectModelException e )
|
catch ( InvalidProjectModelException e )
|
||||||
{
|
{
|
||||||
|
|
|
@ -184,9 +184,6 @@ under the License.
|
||||||
<role>org.apache.maven.context.BuildContextManager</role>
|
<role>org.apache.maven.context.BuildContextManager</role>
|
||||||
<role-hint>default</role-hint>
|
<role-hint>default</role-hint>
|
||||||
</requirement>
|
</requirement>
|
||||||
<requirement>
|
|
||||||
<role>org.apache.maven.artifact.manager.WagonManager</role>
|
|
||||||
</requirement>
|
|
||||||
<requirement>
|
<requirement>
|
||||||
<role>org.apache.maven.MavenTools</role>
|
<role>org.apache.maven.MavenTools</role>
|
||||||
</requirement>
|
</requirement>
|
||||||
|
|
Loading…
Reference in New Issue