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>