You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by jd...@apache.org on 2005/07/14 00:34:45 UTC

svn commit: r216279 - in /maven/components/trunk/maven-project/src/main/java/org/apache/maven/project: DefaultMavenProjectBuilder.java validation/DefaultModelValidator.java

Author: jdcasey
Date: Wed Jul 13 15:34:40 2005
New Revision: 216279

URL: http://svn.apache.org/viewcvs?rev=216279&view=rev
Log:
Resolved: MNG-502

Modified:
    maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
    maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/validation/DefaultModelValidator.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=216279&r1=216278&r2=216279&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 Wed Jul 13 15:34:40 2005
@@ -304,8 +304,6 @@
 
             Model current = currentProject.getModel();
 
-            forcePluginExecutionIdCollision( pomLocation, current );
-
             modelInheritanceAssembler.assembleModelInheritance( current, previous );
 
             previous = current;
@@ -323,38 +321,6 @@
         return project;
     }
 
-    private void forcePluginExecutionIdCollision( String pomLocation, Model model )
-        throws ProjectBuildingException
-    {
-        Build build = model.getBuild();
-
-        if ( build != null )
-        {
-            List plugins = build.getPlugins();
-
-            if ( plugins != null )
-            {
-                for ( Iterator it = plugins.iterator(); it.hasNext(); )
-                {
-                    Plugin plugin = (Plugin) it.next();
-
-                    // this will force an IllegalStateException, even if we don't have to do inheritance assembly.
-                    try
-                    {
-                        plugin.getExecutionsAsMap();
-                    }
-                    catch ( IllegalStateException collisionException )
-                    {
-                        throw new ProjectBuildingException(
-                            "Detected illegal plugin-execution configuration in: " + pomLocation +
-                                " Error output: \n\n" + collisionException.getMessage(), collisionException );
-                    }
-                }
-            }
-        }
-    }
-
-
     /**
      * @todo can this take in a model instead of a project and still be successful?
      * @todo In fact, does project REALLY need a MavenProject as a parent? Couldn't it have just a wrapper around a
@@ -648,8 +614,6 @@
         URL url = DefaultMavenProjectBuilder.class.getResource( "pom-" + MAVEN_MODEL_VERSION + ".xml" );
 
         Model superModel = readModel( url );
-
-        forcePluginExecutionIdCollision( "<super-POM>", superModel );
 
         return superModel;
     }

Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/validation/DefaultModelValidator.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/validation/DefaultModelValidator.java?rev=216279&r1=216278&r2=216279&view=diff
==============================================================================
--- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/validation/DefaultModelValidator.java (original)
+++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/validation/DefaultModelValidator.java Wed Jul 13 15:34:40 2005
@@ -16,10 +16,13 @@
  * limitations under the License.
  */
 
+import org.apache.maven.model.Build;
 import org.apache.maven.model.Dependency;
 import org.apache.maven.model.Model;
+import org.apache.maven.model.Plugin;
 
 import java.util.Iterator;
+import java.util.List;
 
 /**
  * @author <a href="mailto:trygvis@inamo.no">Trygve Laugst&oslash;l</a>
@@ -57,10 +60,40 @@
 
             validateStringNotEmpty( "dependencies.dependency.version", result, d.getVersion() );
         }
+        
+        forcePluginExecutionIdCollision( model, result );
 
         return result;
     }
 
+    private void forcePluginExecutionIdCollision( Model model, ModelValidationResult result )
+    {
+        Build build = model.getBuild();
+    
+        if ( build != null )
+        {
+            List plugins = build.getPlugins();
+    
+            if ( plugins != null )
+            {
+                for ( Iterator it = plugins.iterator(); it.hasNext(); )
+                {
+                    Plugin plugin = (Plugin) it.next();
+    
+                    // this will force an IllegalStateException, even if we don't have to do inheritance assembly.
+                    try
+                    {
+                        plugin.getExecutionsAsMap();
+                    }
+                    catch ( IllegalStateException collisionException )
+                    {
+                        result.addMessage( collisionException.getMessage() );
+                    }
+                }
+            }
+        }
+    }
+    
     ///////////////////////////////////////////////////////////////////////////
     // Field validator
 



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org