You are viewing a plain text version of this content. The canonical link for it is here.
Posted to m2-dev@maven.apache.org by br...@apache.org on 2005/03/01 05:35:54 UTC

cvs commit: maven-components/maven-core/src/main/resources/META-INF/plexus components.xml

brett       2005/02/28 20:35:54

  Modified:    maven-artifact/src/main/java/org/apache/maven/artifact/handler
                        AbstractArtifactHandler.java ArtifactHandler.java
                        JavadocHandler.java PluginHandler.java
                        PomHandler.java SourceHandler.java TestHandler.java
                        WarHandler.java
               maven-reporting-api pom.xml
               maven-core/src/main/java/org/apache/maven/lifecycle
                        DefaultLifecycleExecutor.java
               maven-core/src/main/resources/META-INF/plexus components.xml
  Log:
  start to push the lifecycle definition towards the type handlers
  
  Revision  Changes    Path
  1.3       +12 -1     maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/AbstractArtifactHandler.java
  
  Index: AbstractArtifactHandler.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/AbstractArtifactHandler.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- AbstractArtifactHandler.java	1 Mar 2005 04:04:25 -0000	1.2
  +++ AbstractArtifactHandler.java	1 Mar 2005 04:35:53 -0000	1.3
  @@ -21,12 +21,18 @@
   import java.io.File;
   
   /**
  + * @todo these should be configurable
    * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
    * @version $Id$
    */
   public abstract class AbstractArtifactHandler
       implements ArtifactHandler
   {
  +    public String additionalPlugin()
  +    {
  +        return null;
  +    }
  +
       public File source( String basedir, Artifact artifact )
       {
           return new File( basedir, artifact.getArtifactId() + "-" + artifact.getVersion() + "." + extension() );
  @@ -41,4 +47,9 @@
       {
           return "jars";
       }
  +
  +    public String packageGoal()
  +    {
  +        return "jar:jar";
  +    }
   }
  
  
  
  1.2       +5 -1      maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/ArtifactHandler.java
  
  Index: ArtifactHandler.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/ArtifactHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ArtifactHandler.java	9 Aug 2004 18:37:32 -0000	1.1
  +++ ArtifactHandler.java	1 Mar 2005 04:35:53 -0000	1.2
  @@ -33,4 +33,8 @@
       String extension();
   
       String directory();
  +
  +    String packageGoal();
  +
  +    String additionalPlugin();
   }
  
  
  
  1.2       +6 -1      maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/JavadocHandler.java
  
  Index: JavadocHandler.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/JavadocHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- JavadocHandler.java	10 Jan 2005 21:45:00 -0000	1.1
  +++ JavadocHandler.java	1 Mar 2005 04:35:53 -0000	1.2
  @@ -41,4 +41,9 @@
       {
           return "javadocs";
       }
  +
  +    public String packageGoal()
  +    {
  +        return "apidocs:jar";
  +    }
   }
  \ No newline at end of file
  
  
  
  1.2       +6 -1      maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/PluginHandler.java
  
  Index: PluginHandler.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/PluginHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- PluginHandler.java	9 Aug 2004 18:37:32 -0000	1.1
  +++ PluginHandler.java	1 Mar 2005 04:35:53 -0000	1.2
  @@ -27,6 +27,11 @@
   public class PluginHandler
       extends AbstractArtifactHandler
   {
  +    public String additionalPlugin()
  +    {
  +        return "plugin";
  +    }
  +
       public String directory()
       {
           return "plugins";
  
  
  
  1.2       +6 -1      maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/PomHandler.java
  
  Index: PomHandler.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/PomHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- PomHandler.java	9 Aug 2004 18:37:32 -0000	1.1
  +++ PomHandler.java	1 Mar 2005 04:35:53 -0000	1.2
  @@ -36,4 +36,9 @@
       {
           return "poms";
       }
  +
  +    public String packageGoal()
  +    {
  +        return null;
  +    }
   }
  
  
  
  1.2       +6 -1      maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/SourceHandler.java
  
  Index: SourceHandler.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/SourceHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- SourceHandler.java	22 Nov 2004 12:46:55 -0000	1.1
  +++ SourceHandler.java	1 Mar 2005 04:35:54 -0000	1.2
  @@ -25,4 +25,9 @@
       {
           return "sources";
       }
  +
  +    public String packageGoal()
  +    {
  +        return "source:source";
  +    }
   }
  
  
  
  1.2       +2 -1      maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/TestHandler.java
  
  Index: TestHandler.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/TestHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- TestHandler.java	9 Aug 2004 18:37:32 -0000	1.1
  +++ TestHandler.java	1 Mar 2005 04:35:54 -0000	1.2
  @@ -21,6 +21,7 @@
   import java.io.File;
   
   /**
  + * @todo [BP] should be removed and replaced with scope if other design is approved
    * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
    * @version $Id$
    */
  
  
  
  1.2       +6 -1      maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/WarHandler.java
  
  Index: WarHandler.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-artifact/src/main/java/org/apache/maven/artifact/handler/WarHandler.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- WarHandler.java	10 Jan 2005 21:45:00 -0000	1.1
  +++ WarHandler.java	1 Mar 2005 04:35:54 -0000	1.2
  @@ -32,4 +32,9 @@
       {
           return "wars";
       }
  +
  +    public String packageGoal()
  +    {
  +        return "war:war";
  +    }
   }
  
  
  
  1.4       +0 -0      maven-components/maven-reporting-api/pom.xml
  
  
  
  
  1.12      +21 -3     maven-components/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
  
  Index: DefaultLifecycleExecutor.java
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- DefaultLifecycleExecutor.java	28 Feb 2005 22:57:39 -0000	1.11
  +++ DefaultLifecycleExecutor.java	1 Mar 2005 04:35:54 -0000	1.12
  @@ -18,6 +18,8 @@
    */
   
   import org.apache.maven.artifact.resolver.ArtifactResolver;
  +import org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
  +import org.apache.maven.artifact.handler.ArtifactHandler;
   import org.apache.maven.execution.MavenExecutionResponse;
   import org.apache.maven.execution.MavenSession;
   import org.apache.maven.lifecycle.goal.GoalExecutionException;
  @@ -49,6 +51,8 @@
   
       private ArtifactResolver artifactResolver;
   
  +    private ArtifactHandlerManager artifactHandlerManager;
  +
       private MavenProjectBuilder projectBuilder;
   
       private PluginManager pluginManager;
  @@ -77,7 +81,21 @@
           try
           {
               // TODO: should enrich this with the type handler, but for now just use "type" as is
  -            processPluginPhases( session.getProject().getType(), session );
  +            ArtifactHandler handler = artifactHandlerManager.getArtifactHandler( session.getProject().getType() );
  +
  +            if ( handler != null )
  +            {
  +                // TODO: perhaps each type should define their own lifecycle completely, using the base as a default?
  +                // If so, remove both of these goals from type handler
  +                if ( handler.packageGoal() != null )
  +                {
  +                    verifyMojoPhase( handler.packageGoal(), session );
  +                }
  +                if ( handler.additionalPlugin() != null )
  +                {
  +                    processPluginPhases( handler.additionalPlugin(), session );
  +                }
  +            }
   
               processPluginConfiguration( session.getProject(), session );
   
  @@ -191,7 +209,7 @@
           {
               pluginManager.verifyPluginForGoal( task, session );
               mojoDescriptor = pluginManager.getMojoDescriptor( task );
  -            if ( mojoDescriptor.getPhase() != null )
  +            if ( mojoDescriptor != null && mojoDescriptor.getPhase() != null )
               {
                   Phase phase = (Phase) phaseMap.get( mojoDescriptor.getPhase() );
                   phase.getGoals().add( task );
  
  
  
  1.16      +3 -3      maven-components/maven-core/src/main/resources/META-INF/plexus/components.xml
  
  Index: components.xml
  ===================================================================
  RCS file: /home/cvs/maven-components/maven-core/src/main/resources/META-INF/plexus/components.xml,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- components.xml	27 Feb 2005 05:39:55 -0000	1.15
  +++ components.xml	1 Mar 2005 04:35:54 -0000	1.16
  @@ -185,6 +185,9 @@
             <role>org.apache.maven.artifact.resolver.ArtifactResolver</role>
           </requirement>
           <requirement>
  +          <role>org.apache.maven.artifact.handler.manager.ArtifactHandlerManager</role>
  +        </requirement>
  +        <requirement>
             <role>org.apache.maven.project.MavenProjectBuilder</role>
           </requirement>
           <requirement>
  @@ -260,9 +263,6 @@
             <!-- 13 -->
             <phase>
               <id>package</id>
  -            <goals>
  -              <goal implementation="java.lang.String">jar:jar</goal>
  -            </goals>
             </phase>
             <!-- 14 -->
             <phase>