Author: jdcasey
Date: Tue Jun 21 08:36:00 2005
New Revision: 191669

URL: http://svn.apache.org/viewcvs?rev=191669&view=rev
Log:
Improving error reporting when execution id's collide.

Modified:
    
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java

Modified: 
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java?rev=191669&r1=191668&r2=191669&view=diff
==============================================================================
--- 
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
 (original)
+++ 
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
 Tue Jun 21 08:36:00 2005
@@ -267,9 +267,11 @@
 
         for ( Iterator i = lineage.iterator(); i.hasNext(); )
         {
-            Model current = ( (MavenProject) i.next() ).getModel();
+            MavenProject currentProject = (MavenProject) i.next();
+            
+            Model current = currentProject.getModel();
 
-            forcePluginExecutionIdCollision( current );
+            forcePluginExecutionIdCollision( pomLocation, current );
 
             modelInheritanceAssembler.assembleModelInheritance( current, 
previous );
 
@@ -288,7 +290,8 @@
         return project;
     }
 
-    private void forcePluginExecutionIdCollision( Model model )
+    private void forcePluginExecutionIdCollision( String pomLocation, Model 
model )
+        throws ProjectBuildingException
     {
         Build build = model.getBuild();
 
@@ -303,7 +306,14 @@
                     Plugin plugin = (Plugin) it.next();
 
                     // this will force an IllegalStateException, even if we 
don't have to do inheritance assembly.
-                    plugin.getExecutionsAsMap();
+                    try
+                    {
+                        plugin.getExecutionsAsMap();
+                    }
+                    catch ( IllegalStateException collisionException )
+                    {
+                        throw new ProjectBuildingException( "Detected illegal 
plugin-execution configuration in: " + pomLocation, collisionException ); 
+                    }
                 }
             }
         }
@@ -600,7 +610,7 @@
 
         Model superModel = readModel( url );
 
-        forcePluginExecutionIdCollision( superModel );
+        forcePluginExecutionIdCollision( "<super-POM>", superModel );
 
         return superModel;
     }



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to