michal 2003/07/03 13:41:36
Modified: src/plugins-build/multiproject/xdocs changes.xml goals.xml
properties.xml
src/plugins-build/multiproject project.xml plugin.jelly
plugin.properties
Log:
Added multiproject 'install', 'install-snapshot', 'deploy' and 'deploy-snapshot'
facility
Revision Changes Path
1.2 +4 -0 maven/src/plugins-build/multiproject/xdocs/changes.xml
Index: changes.xml
===================================================================
RCS file: /home/cvs/maven/src/plugins-build/multiproject/xdocs/changes.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- changes.xml 30 Jun 2003 03:18:49 -0000 1.1
+++ changes.xml 3 Jul 2003 20:41:36 -0000 1.2
@@ -7,6 +7,10 @@
<body>
<release version="1.0" date="in CVS">
+ <action dev="michal" type="add">
+ Added multiproject 'install', 'install-snapshot', 'deploy' and
'deploy-snapshot'
+ facility
+ </action>
<action dev="dion" type="update">
Rename plugin from reactor to multiproject to reduce confusion
</action>
1.2 +54 -7 maven/src/plugins-build/multiproject/xdocs/goals.xml
Index: goals.xml
===================================================================
RCS file: /home/cvs/maven/src/plugins-build/multiproject/xdocs/goals.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- goals.xml 30 Jun 2003 03:18:49 -0000 1.1
+++ goals.xml 3 Jul 2003 20:41:36 -0000 1.2
@@ -4,6 +4,7 @@
<properties>
<title>Maven Multi-Project Plug-in Goals</title>
<author email="[EMAIL PROTECTED]">dIon Gillard</author>
+ <author email="[EMAIL PROTECTED]">Michal Maczka</author>
</properties>
<body>
<goals>
@@ -12,12 +13,58 @@
<description>Run the site goal of all projects</description>
</goal>
<goal>
- <name>multiproject:site</name>
- <description>Run the site goal of all projects</description>
+ <name>multiproject:install</name>
+ <description>
+ Run <code>'artifact':install</code> goal for all project.
+ <br/>
+ <code>'artifact'</code> is replaced by the value of property
+ <code>maven.multiproject.type</code> which should be set
+ individualy for each project.
+ </br>
+ E.g. if we have projects <i>A</i>, <i>B</i> and <i>C<i>
+ with following settiing:
+ <ol>
+ <li><i>A</i>: <code>maven.multiproject.type=war</code></li>
+ <li><i>B</i>: <code>maven.multiproject.type=ejb</code></li>
+ <li><i>C</i>: <code>maven.multiproject.type=jar</code></li>
+ </ol>
+ <br/>
+ Following goals will be run:
+ <ol>
+ <li><i>A</i>: <code>war:install</code></li>
+ <li><i>B</i>: <code>ejb:install</code></li>
+ <li><i>C</i>: <code>jar:install</code></li>
+ </ol>
+ </description>
+ </goal>
+ <goal>
+ <name>multiproject:install-snapshot</name>
+ <description>
+ Run <code>'artifact':install-snapshot</code> goal for all projects.
+ </description>
</goal>
- <goal>
- <name>multiproject:goal</name>
- <description>
+ <goal>
+ <name>multiproject:deploy</name>
+ <description>
+ Run <code>'artifact':install-snapshot</code> goal for all projects.
+ </description>
+ </goal>
+ <goal>
+ <name>multiproject:deploy-snapshot</name>
+ <description>
+ Run <code>'artifact':install-snapshot</code> goal for all projects.
+ </description>
+ </goal>
+ <goal>
+ <name>multiproject:artifact</name>
+ <description>
+ Run <code>'artifact':'artifact'</code> goal for all projects.
+ </description>
+ </goal
+
+ <goal>
+ <name>multiproject:goal</name>
+ <description>
Run the comma separated list of goals provided by the variable
<code>goal</code> for all projects
e.g.
<source>
@@ -27,8 +74,8 @@
<source>
maven -Dgoal=clean,java:compile,test multiproject:goal
</source>
- </description>
- </goal>
+ </description>
+ </goal>
</goals>
</body>
</document>
1.2 +24 -0 maven/src/plugins-build/multiproject/xdocs/properties.xml
Index: properties.xml
===================================================================
RCS file: /home/cvs/maven/src/plugins-build/multiproject/xdocs/properties.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- properties.xml 30 Jun 2003 03:18:49 -0000 1.1
+++ properties.xml 3 Jul 2003 20:41:36 -0000 1.2
@@ -65,6 +65,30 @@
</p>
</td>
</tr>
+
+ <tr>
+ <td>maven.multiproject.type</td>
+ <td>No</td>
+ <td>
+ <p>
+ This property should be set for
+ each subproject separately.
+ It allows to control the type of
+ artifact (deliverable) which will
+ be built, installed or deployed by the reactor.
+ <br/>
+ E.g. this property is set to <code>war</code>
+ when multiproject will build the project
+ it will try to create artifact to attain a goal:
+ <code>war:war</code>. If it is set to <code>ear</code>
+ the goal which will deliver an artifact will be
+ <code>ear:ear</code>
+ </p>
+ <p>
+ Default value is <code>jar</code>.
+ </p>
+ </td>
+ </tr>
</table>
</section>
</body>
1.2 +9 -0 maven/src/plugins-build/multiproject/project.xml
Index: project.xml
===================================================================
RCS file: /home/cvs/maven/src/plugins-build/multiproject/project.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- project.xml 30 Jun 2003 03:18:48 -0000 1.1
+++ project.xml 3 Jul 2003 20:41:36 -0000 1.2
@@ -23,5 +23,14 @@
<role>Java Developer</role>
</roles>
</developer>
+ <developer>
+ <name>Michal Maczka</name>
+ <id>dion</id>
+ <email>[EMAIL PROTECTED]</email>
+ <organization>Dimatics</organization>
+ <roles>
+ <role>Java Developer</role>
+ </roles>
+ </developer>
</developers>
</project>
1.2 +104 -0 maven/src/plugins-build/multiproject/plugin.jelly
Index: plugin.jelly
===================================================================
RCS file: /home/cvs/maven/src/plugins-build/multiproject/plugin.jelly,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- plugin.jelly 30 Jun 2003 03:18:48 -0000 1.1
+++ plugin.jelly 3 Jul 2003 20:41:36 -0000 1.2
@@ -41,5 +41,109 @@
ignoreFailures="${maven.multiproject.ignoreFailures}"
/>
</goal>
+
+
+ <!--==================================================================-->
+ <!-- Builds all artifacts for all subproject -->
+ <!--==================================================================-->
+ <goal name="multiproject:artifact"
+ description=" Builds all artifacts for all subproject">
+ <maven:reactor
+ basedir="${maven.multiproject.basedir}"
+ includes="${maven.multiproject.includes}"
+ excludes="${maven.multiproject.excludes}"
+ postProcessing="false"
+ goals="multiproject:artifact-callback"
+ ignoreFailures="${maven.multiproject.ignoreFailures}"
+ />
+ </goal>
+
+ <goal name="multiproject:artifact-callback">
+ <attainGoal name="${maven.multiproject.type}:${maven.multiproject.type}"/>
+ </goal>
+
+
+ <!--==================================================================-->
+ <!-- Run 'artifact':install for all subprojects -->
+ <!--==================================================================-->
+ <goal name="multiproject:install"
+ description="Run 'artifact':install for all subprojects">
+
+ <maven:reactor
+ basedir="${maven.multiproject.basedir}"
+ includes="${maven.multiproject.includes}"
+ excludes="${maven.multiproject.excludes}"
+ postProcessing="false"
+ goals="multiproject:install-callback"
+ ignoreFailures="${maven.multiproject.ignoreFailures}"
+ />
+ </goal>
+
+ <goal name="multiproject:install-callback">
+ <attainGoal name="${maven.multiproject.type}:install"/>
+ </goal>
+
+ <!--==================================================================-->
+ <!-- Run 'artifact':install-snapshot for all subprojects -->
+ <!--==================================================================-->
+ <goal name="multiproject:install-snapshot"
+ description="Run the site goal of all subprojects">
+
+ <maven:reactor
+ basedir="${maven.multiproject.basedir}"
+ includes="${maven.multiproject.includes}"
+ excludes="${maven.multiproject.excludes}"
+ postProcessing="false"
+ goals="multiproject:install-snapshot-callback"
+ ignoreFailures="${maven.multiproject.ignoreFailures}"
+ />
+ </goal>
+
+ <goal name="multiproject:install-snapshot-callback">
+ <attainGoal name="${maven.multiproject.type}:install-snapshot"/>
+ </goal>
+
+ <!--==================================================================-->
+ <!-- Run 'artifact':deploy for all subprojects -->
+ <!--==================================================================-->
+ <goal name="multiproject:deploy"
+ description="Run 'artifact':deploy for all subprojects">
+
+ <maven:reactor
+ basedir="${maven.multiproject.basedir}"
+ includes="${maven.multiproject.includes}"
+ excludes="${maven.multiproject.excludes}"
+ postProcessing="false"
+ goals="multiproject:deploy-callback"
+ ignoreFailures="${maven.multiproject.ignoreFailures}"
+ />
+ </goal>
+
+ <goal name="multiproject:deploy-callback">
+ <attainGoal name="${maven.multiproject.type}:deploy"/>
+ </goal>
+
+
+ <!--==================================================================-->
+ <!-- Run 'artifact':deploy-snapshot for all subprojects -->
+ <!--==================================================================-->
+ <goal name="multiproject:deploy-snapshot"
+ description="Run 'artifact':deploy-snapshot for all subprojects">
+ <maven:reactor
+ basedir="${maven.multiproject.basedir}"
+ includes="${maven.multiproject.includes}"
+ excludes="${maven.multiproject.excludes}"
+ postProcessing="false"
+ goals="multiproject:deploy-snapshot-callback"
+ ignoreFailures="${maven.multiproject.ignoreFailures}"
+ />
+ </goal>
+
+ <goal name="multiproject:deploy-snapshot-callback">
+ <attainGoal name="${maven.multiproject.type}:deploy-snapshot"/>
+ </goal>
+
+
+
</project>
1.2 +3 -1 maven/src/plugins-build/multiproject/plugin.properties
Index: plugin.properties
===================================================================
RCS file: /home/cvs/maven/src/plugins-build/multiproject/plugin.properties,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- plugin.properties 30 Jun 2003 03:18:48 -0000 1.1
+++ plugin.properties 3 Jul 2003 20:41:36 -0000 1.2
@@ -6,4 +6,6 @@
maven.multiproject.basedir=${basedir}
maven.multiproject.includes=*/project.xml
maven.multiproject.excludes=
-maven.multiproject.ignoreFailures=false
\ No newline at end of file
+maven.multiproject.ignoreFailures=false
+
+maven.multiproject.type=jar
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]