Author: brett
Date: Sat Jul 30 09:04:02 2005
New Revision: 226540
URL: http://svn.apache.org/viewcvs?rev=226540&view=rev
Log:
correct no project handling (eg archetype:create)
Modified:
maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
Modified:
maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
URL:
http://svn.apache.org/viewcvs/maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java?rev=226540&r1=226539&r2=226540&view=diff
==============================================================================
---
maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
(original)
+++
maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
Sat Jul 30 09:04:02 2005
@@ -125,36 +125,38 @@
}
EventDispatcher dispatcher = request.getEventDispatcher();
-
+
String event = MavenEvents.REACTOR_EXECUTION;
dispatcher.dispatchStart( event, request.getBaseDirectory() );
List projects;
-
+
MavenProject topLevelProject;
try
{
List files = getProjectFiles( request );
-
+
projects = collectProjects( files, request.getLocalRepository(),
request.isRecursive(),
request.getSettings() );
-
+
// the reasoning here is that the list is still unsorted according
to dependency, so the first project
// SHOULD BE the top-level, or the one we want to start with if
we're doing an aggregated build.
-
- // TODO: !![jc; 28-jul-2005] check this; if we're using '-r' and
there are aggregator tasks, this will result in weirdness.
- topLevelProject = (MavenProject) projects.get( 0 );
-
- projects = ProjectSorter.getSortedProjects(projects);
- if ( projects.isEmpty() )
+ if ( !projects.isEmpty() )
+ {
+ // TODO: !![jc; 28-jul-2005] check this; if we're using '-r'
and there are aggregator tasks, this will result in weirdness.
+ topLevelProject = (MavenProject) projects.get( 0 );
+ projects = ProjectSorter.getSortedProjects( projects );
+ }
+ else
{
List externalProfiles = getActiveExternalProfiles( null,
request.getSettings() );
- projects.add(
- projectBuilder.buildStandaloneSuperProject(
request.getLocalRepository(), externalProfiles ) );
+ topLevelProject = projectBuilder.buildStandaloneSuperProject(
request.getLocalRepository(),
+
externalProfiles );
+ projects.add( topLevelProject );
}
}
catch ( IOException e )
@@ -201,11 +203,11 @@
try
{
MavenSession session = createSession( request, projects );
-
+
try
{
MavenExecutionResponse response = lifecycleExecutor.execute(
session, topLevelProject, dispatcher );
-
+
// TODO: is this perhaps more appropriate in the CLI?
if ( response.isExecutionFailure() )
{
@@ -219,7 +221,7 @@
if ( exception.getCause() == null )
{
MojoExecutionException e =
(MojoExecutionException) exception;
-
+
logFailure( response, e, e.getLongMessage() );
}
else
@@ -240,7 +242,7 @@
// one example)
logError( response );
}
-
+
return response;
}
else
@@ -279,7 +281,7 @@
{
getLogger().info( "NOTE: Using release-pom: " + file + " in
reactor build." );
}
-
+
MavenProject project = getProject( file, localRepository, settings
);
if ( project.getPrerequesites() != null &&
project.getPrerequesites().getMaven() != null )
@@ -402,7 +404,8 @@
protected MavenSession createSession( MavenExecutionRequest request, List
projects )
{
return new MavenSession( container, request.getSettings(),
request.getLocalRepository(),
- request.getEventDispatcher(), projects,
request.getGoals(), request.getBaseDirectory() );
+ request.getEventDispatcher(), projects,
request.getGoals(),
+ request.getBaseDirectory() );
}
/**
@@ -622,12 +625,12 @@
}
return msg;
}
-
+
private List getProjectFiles( MavenExecutionRequest request )
throws IOException
{
List files = Collections.EMPTY_LIST;
-
+
if ( request.isReactorActive() )
{
// TODO: should we now include the pom.xml in the current
directory?
@@ -636,9 +639,9 @@
String includes = System.getProperty( "maven.reactor.includes",
"**/" + POMv4 + ",**/" + RELEASE_POMv4 );
String excludes = System.getProperty( "maven.reactor.excludes",
POMv4 + "," + RELEASE_POMv4 );
-
+
files = FileUtils.getFiles( userDir, includes, excludes );
-
+
filterOneProjectFilePerDirectory( files );
// make sure there is consistent ordering on all platforms, rather
than using the filesystem ordering
@@ -667,28 +670,28 @@
files = Collections.singletonList( projectFile );
}
}
-
+
return files;
}
private void filterOneProjectFilePerDirectory( List files )
{
List releaseDirs = new ArrayList();
-
+
for ( Iterator it = files.iterator(); it.hasNext(); )
{
File projectFile = (File) it.next();
-
+
if ( RELEASE_POMv4.equals( projectFile.getName() ) )
{
releaseDirs.add( projectFile.getParentFile() );
}
}
-
+
for ( Iterator it = files.iterator(); it.hasNext(); )
{
File projectFile = (File) it.next();
-
+
// remove pom.xml files where there is a sibling release-pom.xml
file...
if ( !RELEASE_POMv4.equals( projectFile.getName() ) &&
releaseDirs.contains( projectFile.getParentFile() ) )
{
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]