You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by bw...@apache.org on 2003/04/26 18:52:47 UTC

cvs commit: maven-new/core runcli.bat project.properties LICENSE.txt runall.bat project.xml maven.xml

bwalding    2003/04/26 09:52:47

  Added:       core     runcli.bat project.properties LICENSE.txt
                        runall.bat project.xml maven.xml
  Log:
  core module
  
  Revision  Changes    Path
  1.1                  maven-new/core/runcli.bat
  
  Index: runcli.bat
  ===================================================================
  @echo off
  REM Compile maven using
  REM maven aspectj:compile uberjar
  
  java -Dmaven.repo.local=%MAVEN_HOME%/repository -DMAVEN_HOME=%MAVEN_HOME% -Dbasedir=. -jar target\maven-uber.jar %1 %2 %3 %4 %5 %6 %7
  
  
  1.1                  maven-new/core/project.properties
  
  Index: project.properties
  ===================================================================
  # -------------------------------------------------------------------
  # P R O J E C T  P R O P E R T I E S
  # -------------------------------------------------------------------
  
  maven.final.name = maven
  maven.announcement = beta2
  
  # -------------------------------------------------------------------
  # C H E C K S T Y L E  P R O P E R T I E S
  # -------------------------------------------------------------------
  
  maven.checkstyle.properties = ${basedir}/project.properties
  
  checkstyle.lcurly.type = nl
  checkstyle.lcurly.method = nl
  checkstyle.lcurly.other = nl
  checkstyle.rcurly = alone
  
  checkstyle.paren.pad = ignore
  checkstyle.maxlinelen = 132
  
  checkstyle.maxmethodlen = 175
  
  checkstyle.ignore.whitespace = yes
  
  checkstyle.header.file = LICENSE.txt
  checkstyle.header.ignoreline = 1,2,3,4,5,6
  checkstyle.pattern.const = log|^[a-zA-Z][a-zA-Z0-9_]*$
  
  # -------------------------------------------------------------------
  # J A V A D O C  P R O P E R T I E S
  # -------------------------------------------------------------------
  
  maven.javadoc.links = http://jakarta.apache.org/commons/jelly/apidocs/, http://jakarta.apache.org/commons/betwixt/apidocs/, http://werkz.werken.com/apidocs/
  
  # Display the date on the Maven web site
  maven.xdoc.date = left
  
  # Display the maven version the web site is documenting
  maven.xdoc.version = ${pom.currentVersion}
  
  maven.jar.manifest = manifest.mf
  
  # -------------------------------------------------------------------
  # T E S T I N G
  # -------------------------------------------------------------------
  
  # This is to test a feature where a value is defined in a properties file
  # and is available for use inside the POM.
  
  pomProperty = value 
  
  maven.build.dir = ${basedir}/target
  maven.gen.docs = ${maven.build.dir}/generated-xdocs
  
  # Temporarily used for launching with ClassWorlds
  maven.uberjar.main=org.apache.maven.cli.CLI
  
  
  
  1.1                  maven-new/core/LICENSE.txt
  
  Index: LICENSE.txt
  ===================================================================
  
  
  /* ====================================================================
   * The Apache Software License, Version 1.1
   *
   * Copyright (c) 2001 The Apache Software Foundation.  All rights
   * reserved.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions
   * are met:
   *
   * 1. Redistributions of source code must retain the above copyright
   *    notice, this list of conditions and the following disclaimer.
   *
   * 2. Redistributions in binary form must reproduce the above copyright
   *    notice, this list of conditions and the following disclaimer in
   *    the documentation and/or other materials provided with the
   *    distribution.
   *
   * 3. The end-user documentation included with the redistribution,
   *    if any, must include the following acknowledgment:
   *       "This product includes software developed by the
   *        Apache Software Foundation (http://www.apache.org/)."
   *    Alternately, this acknowledgment may appear in the software itself,
   *    if and wherever such third-party acknowledgments normally appear.
   *
   * 4. The names "Apache" and "Apache Software Foundation" and
   *    "Apache Maven" must not be used to endorse or promote products
   *    derived from this software without prior written permission. For
   *    written permission, please contact apache@apache.org.
   *
   * 5. Products derived from this software may not be called "Apache",
   *    "Apache Maven", nor may "Apache" appear in their name, without
   *    prior written permission of the Apache Software Foundation.
   *
   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
   * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   * SUCH DAMAGE.
   * ====================================================================
   *
   * This software consists of voluntary contributions made by many
   * individuals on behalf of the Apache Software Foundation.  For more
   * information on the Apache Software Foundation, please see
   * <http://www.apache.org/>.
   *
   * ====================================================================
   */
  
  
  
  1.1                  maven-new/core/runall.bat
  
  Index: runall.bat
  ===================================================================
  call maven aspectj:compile uberjar
  call runcli eclipse
  
  
  1.1                  maven-new/core/project.xml
  
  Index: project.xml
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  
  <project>
    <pomVersion>3</pomVersion>
    <name>Maven</name>
    <groupId>maven</groupId>
    <artifactId>maven</artifactId>
    <currentVersion>1.0-beta-9</currentVersion>
  
    <organization>
      <name>Apache Software Foundation</name>
      <url>http://jakarta.apache.org/</url>
      <logo>/images/jakarta-logo-blue.gif</logo>
    </organization>
  
    <inceptionYear>2001</inceptionYear>
    <package>org.apache.maven</package>
    <gumpRepositoryId>jakarta</gumpRepositoryId>
    <description>Maven is a project management and project comprehension tool. Maven is based on the concept of a project object model: builds, documentation creation, site publication, and distribution publication are all controlled from the project object model. Maven also provides tools to create source metrics, change logs based directly on source repository, and source cross-references.</description>
    <shortDescription>Java Project Management Tools</shortDescription>
    <url>http://jakarta.apache.org/turbine/${pom.artifactId}/</url>
    <issueTrackingUrl>http://jira.werken.com/BrowseProject.jspa?id=10030</issueTrackingUrl>
    <siteAddress>www.maven.org</siteAddress>
    <siteDirectory>/www/www.maven.org/</siteDirectory>
    <distributionDirectory>/www/jakarta.apache.org/builds/jakarta-turbine-maven/</distributionDirectory>
    
    
    <repository>
      <connection>scm:cvs:pserver:anoncvs@cvs.apache.org:/home/cvspublic:jakarta-turbine-maven:anoncvs</connection>
      <developerConnection>scm:cvs:ext:${maven.username}@cvs.apache.org:/home/cvs:jakarta-turbine-maven</developerConnection>
      <url>http://cvs.apache.org/viewcvs/jakarta-turbine-maven/</url>
    </repository>
    <versions>
      <version>
        <id>b1</id>
        <name>1.0-b1</name>
        <tag>MAVEN_1_0_B1</tag>
      </version>
      <version>
        <id>b2</id>
        <name>1.0-b2</name>
        <tag>MAVEN_1_0_B2</tag>
      </version>
      <version>
        <id>b3</id>
        <name>1.0-b3</name>
        <tag>MAVEN_1_0_B3</tag>
      </version>
      <version>
        <id>b4</id>
        <name>1.0-b4</name>
        <tag>MAVEN_1_0_B4</tag>
      </version>
      <version>
        <id>b5</id>
        <name>1.0-beta-5</name>
        <tag>MAVEN_1_0_B5</tag>
      </version>
      <version>
        <id>b6</id>
        <name>1.0-beta-6</name>
        <tag>MAVEN_1_0_B6</tag>
      </version>
      <version>
        <id>b7</id>
        <name>1.0-beta-7</name>
        <tag>MAVEN_1_0_B7</tag>
      </version>
      <version>
        <id>b8</id>
        <name>1.0-beta-8</name>
        <tag>MAVEN_1_0_B8</tag>
      </version>
      <version>
        <id>b9</id>
        <name>1.0-beta-9</name>
        <tag>HEAD</tag>
      </version>
    </versions>
    <branches></branches>
    <mailingLists>
      <mailingList>
        <name>Maven User List</name>
        <subscribe>turbine-maven-user-subscribe@jakarta.apache.org</subscribe>
        <unsubscribe>turbine-maven-user-unsubscribe@jakarta.apache.org</unsubscribe>
        <archive>http://nagoya.apache.org/eyebrowse/SummarizeList?listName=turbine-maven-user@jakarta.apache.org</archive>
      </mailingList>
      <mailingList>
        <name>Maven Developer List</name>
        <subscribe>turbine-maven-dev-subscribe@jakarta.apache.org</subscribe>
        <unsubscribe>turbine-maven-dev-unsubscribe@jakarta.apache.org</unsubscribe>
        <archive>http://nagoya.apache.org/eyebrowse/SummarizeList?listName=turbine-maven-dev@jakarta.apache.org</archive>
      </mailingList>
    </mailingLists>
    <developers>
      <developer>
        <name>Juancarlo Anez</name>
        <id>juanco</id>
        <email>juanco@apache.org</email>
        <organization/>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>Stephane Bailliez</name>
        <id>sbailliez</id>
        <email>sbailliez@apache.org</email>
        <organization/>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>Jeff Brekke</name>
        <id>brekke</id>
        <email>brekke@apache.org</email>
        <organization/>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>Tom Copeland</name>
        <id>tcopeland</id>
        <email>tcopeland@apache.org</email>
        <organization>InfoEther</organization>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>Eric Dobbs</name>
        <id>dobbs</id>
        <email>eric@dobbse.net</email>
        <organization/>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>dIon Gillard</name>
        <id>dion</id>
        <email>dion@multitask.com.au</email>
        <organization>Multitask Consulting</organization>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>Pete Kazmier</name>
        <id>kaz</id>
        <email>pete-apache-dev@kazmier.com</email>
        <organization/>
        <roles>
          <role>Documentation</role>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>Peter Lynch</name>
        <id>plynch</id>
        <email>plynch@apache.org</email>
        <organization/>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>Glenn McAllister</name>
        <id>glennm</id>
        <email>glenn@somanetworks.com</email>
        <organization>SOMA Networks, Inc.</organization>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>Bob McWhirter</name>
        <id>werken</id>
        <email>bob@werken.com</email>
        <organization>The Werken Company</organization>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>Geir Magnusson Jr.</name>
        <id>geirm</id>
        <email>geirm@optonline.net</email>
        <organization>Independent (DVSL Maven)</organization>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>Vincent Massol</name>
        <id>vmassol</id>
        <email>vmassol@octo.com</email>
        <organization>Octo Technology</organization>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>St?phane Mor</name>
        <id>smor</id>
        <email>stephanemor@yahoo.fr</email>
        <organization>Hasgard Syst?mes et R?seaux</organization>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>Daniel Rall</name>
        <id>dlr</id>
        <email>dlr@finemaltcoding.com</email>
        <organization>CollabNet, Inc.</organization>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>Kurt Schrader</name>
        <id>kschrader</id>
        <email>kschrader@karmalab.org</email>
        <organization>University of Michigan</organization>
        <roles>
          <role>Java Developer</role>
        </roles>
        <url>http://karmalab.org/~kschrader/</url>
      </developer>
      <developer>
        <name>James Strachan</name>
        <id>jstrachan</id>
        <email>james_strachan@yahoo.co.uk</email>
        <organization>Spiritsoft</organization>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>James Taylor</name>
        <id>jtaylor</id>
        <email>james@jamestaylor.org</email>
        <organization/>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>Emmanuel Venisse</name>
        <id>evenisse</id>
        <email>evenisse@ifrance.com</email>
        <organization>Fi System</organization>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
      <developer>
        <name>Jason van Zyl</name>
        <id>jvanzyl</id>
        <email>jason@zenplex.com</email>
        <organization>Zenplex</organization>
        <roles>
          <role>Architect</role>
          <role>Release Manager</role>
        </roles>
      </developer>
      <developer>
        <name>Ben Walding</name>
        <id>bwalding</id>
        <email>jakarta@walding.com</email>
        <organization/>
        <roles>
          <role>Java Developer</role>
        </roles>
      </developer>
    </developers>
    <contributors>
      <contributor>
        <name>Martin van dem Bemt</name>
        <email>mvdb@mvdb.com</email>
      </contributor>
      <contributor>
        <name>Nathan Coast</name>
        <email>nathan.coast@blueyonder.co.uk</email>
      </contributor>
      <contributor>
        <name>Martin Cooper</name>
        <email>martin.cooper@tumbleweed.com</email>
      </contributor>
      <contributor>
        <name>James CE Johnson</name>
        <email>jcej@tragus.org</email>
      </contributor>
      <contributor>
        <name>Mark Langley</name>
        <email>mlangley@casebank.com</email>
      </contributor>
      <contributor>
        <name>Brian Leonard</name>
        <email>brian@brainslug.com</email>
      </contributor>
      <contributor>
        <name>Michael McCallum</name>
        <email>gholam@apache.org</email>
      </contributor>
      <contributor>
        <name>Markus M. May</name>
        <email>mmay@javafreedom.org</email>
      </contributor>
      <contributor>
        <name>Tom Palmer</name>
        <email>tomp@uk.uu.net</email>
      </contributor>
      <contributor>
        <name>Brett Porter</name>
        <email>bporter@f2network.com.au</email>
      </contributor>
      <contributor>
        <name>Kuisong Tong</name>
        <email>Kuisong.Tong@vtradex.com</email>
      </contributor>
    </contributors>
    <!-- Need to mark these as compile-time/run-time -->
  
    <dependencies>
      
      <dependency>
        <id>werkz</id>
        <version>1.0-beta-9</version>
      </dependency>
      
      <dependency>
        <id>classworlds</id>
        <version>1.0-beta-5</version>
      </dependency>
  
      <dependency>
        <groupId>plexus</groupId>
        <artifactId>plexus</artifactId>
        <version>0.3</version>
      </dependency>
  
      <dependency>
        <groupId>avalon</groupId>
        <artifactId>avalon-framework-api</artifactId>
        <version>4.1.4</version>
      </dependency>
      
      <dependency>
        <groupId>xpp3</groupId>
        <artifactId>xpp3</artifactId>
        <version>1.1.2a</version>
      </dependency>
      
      <dependency>
        <groupId>xmlpull</groupId>
        <artifactId>xmlpull</artifactId>
        <version>1.1.2.1</version>
      </dependency>    
      
      <dependency>
        <groupId>aspectj</groupId>
        <artifactId>aspectjrt</artifactId>
        <version>1.0.6</version>
      </dependency>        
  
      <dependency>
        <groupId>xmlrpc</groupId>
        <artifactId>xmlrpc</artifactId>
        <version>1.2-a2</version>
      </dependency>  
      
      <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.0.2</version>
      </dependency>  
      
      <dependency>
        <groupId>commons-lang</groupId>
        <artifactId>commons-lang</artifactId>
        <version>1.0.1</version>
      </dependency>       
  
      <!-- Component Testing -->
      
      <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.6</version>
      </dependency>
  
  	<!-- Remove after classloader stuff gets sorted -->
      <dependency>
        <groupId>suiterunner</groupId>
        <artifactId>suiterunner</artifactId>
        <version>1.0beta6</version>
      </dependency>
  
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>3.8.1</version>
      </dependency>
      
      <dependency>
        <id>commons-jelly</id>
        <version>20030310.073407</version>
        <url>http://jakarta.apache.org/commons/jelly/</url>
      </dependency>
      
      <!--dependency>
        <groupId>commons-jelly</groupId>
        <artifactId>commons-jelly-tags-ant</artifactId>
        <version>20030211.142045</version>
        <url>http://jakarta.apache.org/commons/jelly/tags/ant/</url>
      </dependency-->
      
      <dependency>
        <groupId>commons-jelly</groupId>
        <artifactId>commons-jelly-tags-define</artifactId>
        <version>20030211.142932</version>
        <url>http://jakarta.apache.org/commons/jelly/tags/define/</url>
      </dependency>
      
      <dependency>
        <groupId>commons-jelly</groupId>
        <artifactId>commons-jelly-tags-util</artifactId>
        <version>20030211.141939</version>
      </dependency>
      
      <dependency>
        <groupId>commons-collections</groupId>
        <artifactId>commons-collections</artifactId>
        <version>2.1</version>
      </dependency>
      
      <dependency>
        <groupId>commons-beanutils</groupId>
        <artifactId>commons-beanutils</artifactId>
        <version>2.1</version>
      </dependency>
      
      <dependency>
        <groupId>commons-grant</groupId>
        <artifactId>commons-grant</artifactId>
        <version>1.0-beta-4</version>
      </dependency>
      
      <dependency>
        <groupId>dom4j</groupId>
        <artifactId>dom4j</artifactId>
        <version>1.4-dev-8</version>
      </dependency>
      
      <dependency>
        <groupId>jexl</groupId>
        <artifactId>jexl</artifactId>
        <version>SNAPSHOT</version>
      </dependency>
      
  
    </dependencies>
    
    <build>
      <nagEmailAddress>turbine-maven-dev@jakarta.apache.org</nagEmailAddress>
      <sourceDirectory>${basedir}/src/java</sourceDirectory>
      <unitTestSourceDirectory>${basedir}/src/test</unitTestSourceDirectory>
      <aspectSourceDirectory>${basedir}/src/aspect</aspectSourceDirectory>
      <unitTest>
        <includes>
          <include>**/*Test.java</include>
        </includes>
  
        <resources>
          <resource>
            <directory>${basedir}/src/test</directory>
            <includes>
              <include>**/*.xml</include>
            </includes>
          </resource>
        </resources>
  
      </unitTest>
      
      <resources>
        <resource>
          <directory>src/conf</directory>
          <includes>
            <include>*.xsd</include>
            <include>*.dtd</include>
            <include>*.mod</include>
            <include>log4j.properties</include>
            <include>driver.jelly</include>
            <include>driver.properties</include>
          </includes>
        </resource>
        <resource>
          <directory>src/messages</directory>
          <targetPath>org/apache/maven/messages</targetPath>
          <includes>
            <include>messages*.properties</include>
          </includes>
        </resource>
      </resources>
    </build>
  
    <reports>
      <!--
       |
       | These should all be completely self contained. You should be able
       | to generate each of them individually without needing the final
       | xdoc transformation.
       |
       | Each report plugin with it's POM and plugin.jelly logic should
       | contain everything needed to produced the report.
       |
      -->
  
      <report>maven-jdepend-plugin</report>
      <report>maven-checkstyle-plugin</report>
      <report>maven-changelog-plugin</report>
      <report>maven-file-activity-plugin</report>
      <report>maven-developer-activity-plugin</report>
      <report>maven-javadoc-plugin</report>
      <report>maven-jxr-plugin</report>
      <report>maven-junit-report-plugin</report>
      <report>maven-tasklist-plugin</report>
      <report>maven-jellydoc-plugin</report>
    </reports>
  
    <!-- For maven internal testing -->
  
    <properties>
      <testName>testValue</testName>
      <pomProperty>${pomProperty}</pomProperty>
    </properties>
  
  </project>
  
  
  
  1.1                  maven-new/core/maven.xml
  
  Index: maven.xml
  ===================================================================
  <project default="build"
    xmlns:j="jelly:core"
    xmlns:u="jelly:util"
    xmlns:maven="jelly:maven"
    xmlns:m="maven"
    xmlns:deploy="deploy">
  
    <goal name="build">
      <attainGoal name="aspectj:compile"/>
      <attainGoal name="jar:jar"/>
    </goal>
  
    <goal name="maven:init">
      <j:choose>
        <j:when test="${systemScope['os.name'].startsWith('Windows')}">
          <j:set var="maven.bin.script" value="${maven.home}/bin/maven.bat"/>
        </j:when>
        <j:otherwise>
          <j:set var="maven.bin.script" value="${maven.home}/bin/maven"/>
        </j:otherwise>
      </j:choose>
    </goal>
  
    <!-- ================================================================== -->
    <!-- T O U C H S T O N E  B U I L D                                     -->
    <!-- ================================================================== -->
    <!-- This runs as part of the standard runtime testing in Maven. It is  -->
    <!-- a build that tries to exercise as many of Maven's features as      -->
    <!-- possible.                                                          -->
    <!-- ================================================================== -->
    
    <!--
    <postGoal name="test:test">
      <j:if test="${context.getVariable('maven.mode.online')}">
        <echo>
        
        We are online so the touchstone will be run ...
        
        </echo>
        <maven:maven
          descriptor="${basedir}/src/test/touchstone-build/project.xml"
          goals="clean,java:jar,touchstone-tests"
          ignoreFailures="false"
        />
      </j:if>
    </postGoal>
    -->
  
    <!-- ================================================================== -->
    <!-- B U I L D  P L U G I N S                                           -->
    <!-- ================================================================== -->
    <!-- Used by the bootstrap process to build all of Maven's plugins.     -->
    <!-- ================================================================== -->
  
    <goal 
      name="maven:plugins-build"
      description="Build each Maven plugin into an installable jar">
  
      <maven:reactor
        basedir="${maven.src.dir}/plugins-build"
        reactorXml="${maven.src.dir}/plugins-build/reactor.xml"
        includes="*/project.xml"
        excludes="examples/*"
        goals="clean,plugin"
        banner="Building"
        ignoreFailures="false"
      />
    </goal>
  
    <goal name="maven:plugins-clean"
      description="Build each Maven plugin into an installable jar">
  
        <maven:reactor
          basedir="${maven.src.dir}/plugins-build"
          includes="*/project.xml"
          goals="clean"
          banner="Building"
          ignoreFailures="false"
        />
    </goal>
  
    <goal name="maven:plugin-convert-snapshots"
      description="Convert snapshot versions into resolved timestamped versions.">
  
        <maven:reactor
          basedir="${maven.src.dir}/plugins-build"
          includes="*/project.xml"
          goals="convert-snapshots-auto"
          banner="Resolving snapshot versions"
          ignoreFailures="true"
        />
    </goal>
  
    <goal name="maven:plugin-validate-pom-for-release"
      description="Validate the Plugin POMs for release.">
  
        <maven:reactor
          basedir="${maven.src.dir}/plugins-build"
          includes="*/project.xml"
          goals="validate-pom-for-release"
          banner="Resolving snapshot versions"
          ignoreFailures="false"
        />
    </goal>
  
    <goal name="maven:plugin-increment-snapshot-version"
      description="Graduate Plugin currentVersion element.">
  
        <maven:reactor
          basedir="${maven.src.dir}/plugins-build"
          includes="*/project.xml"
          goals="increment-snapshot-version"
          banner="Graduating snapshot version"
          ignoreFailures="true"
        />
    </goal>
  
    <!-- ================================================================== -->
    <!-- G E N E R A T E  P L U G I N  D O C U M E N T A T I O N            -->
    <!-- ================================================================== -->
  
    <goal name="maven:plugin-docs"
      description="Build each Maven plugin's documentation">
  
        <maven:reactor
          basedir="${maven.src.dir}/plugins-build"
          includes="*/project.xml"
          goals="xdoc"
          banner="Generating Docs For"
          ignoreFailures="false"
        />
  
    </goal>
    
    <goal name="maven:jar-install"
          description="Compile Maven and put a new jar in ${maven.home}/lib.">
      <attainGoal name="jar:jar"/>
      <copy file="${maven.build.dir}/${maven.final.name}.jar"
            tofile="${maven.home}/lib/${maven.final.name}.jar"
            overwrite="yes"/>
      <copy file="${maven.build.dir}/${maven.final.name}.jar"
            tofile="${maven.repo.local}/maven/jars/${maven.final.name}.jar"
            overwrite="yes"/>
    </goal>
  
    <!-- ================================================================== -->
    <!-- I N S T A L L   D E F A U L T   G O A L                            -->
    <!-- ================================================================== -->
    <!-- This is meant to avoid having to bootstrap for such trivial things -->
    <!-- as modifying plugins or maven's code.                              -->
    <!-- ================================================================== -->
  
    <goal name="maven:install"
          description="Build and copy new plugins and a new maven jar to ${maven.home}">
  
      <attainGoal name="maven:plugins-build"/>
      <attainGoal name="maven:plugins-install"/>
      <!--
        When we'll have online / offline mechanisms, we will check to see if
        we have to do anything related to the web.
      <attainGoal name="install:from-web"/>
      -->
    </goal>
  
    <!-- ================================================================== -->
    <!-- M A V E N  I N S T A L L E R                                       -->
    <!-- ================================================================== -->
  
    <property name="tag" value="${pom.artifactId}-${pom.currentVersion}"/>
  
    <goal name="maven:installer" description="Create a Maven installer jar">
  
      <property name="installersDir" value="installers"/>
      <property name="installersBase" value="${installersDir}/${tag}"/>
  
      <delete dir="${installersDir}"/>
      <mkdir dir="${installersBase}"/>
  
      <copy todir="${installersBase}">
        <fileset dir="${maven.home}">
          <include name="plugins/*.jar"/>
          <include name="bin/*"/>
          <include name="lib/**"/>
          <include name="maven-project.xsd"/>
        </fileset>
      </copy>
  
      <mkdir dir="${installersBase}/repository"/>
  
      <tar longfile="gnu" tarfile="${tag}.tar">
        <tarfileset dir="${installersDir}">
          <exclude name="**/maven"/>
        </tarfileset>
        <tarfileset dir="${installersDir}" mode="755">
          <include name="**/maven"/>
        </tarfileset>
      </tar>
  
      <gzip
        zipfile="${tag}.tar.gz"
        src="${tag}.tar"
      />
      <copy
        file="${maven.build.dir}/${maven.final.name}.jar"
        todir="${maven.home}/plugins"
      />
  
      <delete file="${tag}.tar"/>
  
      <!-- Create a zip file -->
      <zip zipfile="${tag}.zip">
        <zipfileset dir="${installersDir}"/>
      </zip>
  
    </goal>
  
    <goal name="maven:installer-deploy"
      description="Deploy an installable Maven jar to the remote repo??">
  
      <m:user-check user="${maven.username}"/>
      <attainGoal name="maven:installer"/>
  
      <tar longfile="gnu" tarfile="installers.tar">
        <tarfileset dir="${basedir}">
          <include name="${tag}.tar.gz"/>
          <include name="${tag}.zip"/>
        </tarfileset>
      </tar>
  
      <deploy:artifact
        artifact="installers.tar"
        type="distributions"
        assureDirectoryCommand="mkdir -p"
        siteCommand="cd @deployDirectory@;tar xUvf installers.tar;chmod -R g+u *;rm installers.tar"
      />
  
    </goal>
  
    <!-- 
      These two goals are the start of the merge of plugin docs and
      the main maven documentation. pre-xdoc-transform will be changed
      from a 'goal' to a 'preGoal' on 'xdoc:transform'.
      'postSite' will be changed to a 'postGoal' on 'site'.
      
      Plugin docs will generated and then copied into
      target/docs/reference/plugins/${plugin}/
      
      A simple home page listing the plugins and linking to their
      docs will be generated in pre xdoc:transform, and processed into
      target/docs/reference/plugins/index.html
    -->
         
    <preGoal name="xdoc:transform">
    	<!-- use a template to create the plugins home page
    		 if it's an xdoc, it must be done before xdoc:transform
    		 and should generate to ${maven.gen.docs}/reference/plugins/index.xml
    	  -->
      <mkdir dir="${maven.gen.docs}/reference/plugins/"/>
      <j:file name="${maven.gen.docs}/reference/plugins/index.xml"
        prettyPrint="true">
        <document>
          <properties>
            <title>Maven Plugins</title>
            <author email="dion@multitask.com.au">dIon Gillard</author>
          </properties>
          <body>
            <section name="Plugin Listing">
              <p>
                The following plugins are provided along with Maven
              </p>
              <ul>
                <fileScanner var="pluginProjects">
                  <fileset dir="${basedir}">
                    <include name="src/plugins-build/*/project.xml" />
                  </fileset>
               </fileScanner>
               <j:forEach items="${pluginProjects.iterator()}" var="plugin">
                 <j:set var="pluginName" value="${plugin.parentFile.name}" />
                 <li>
                   <a href="./${pluginName}/index.html">${pluginName}</a>
                 </li>
               </j:forEach>
              </ul>
            </section>
          </body>
        </document>
      </j:file>
  
    </preGoal>
  
    <preGoal name="xdoc">
  	<j:if test="${pluginSite != null}">
       
        <maven:reactor
          basedir="${basedir}"
          includes="src/plugins-build/*/project.xml"
          goals="site"
          banner="Generating site for"
          ignoreFailures="false"
        />
        
        <!-- create the parent directory for the docs -->
        <mkdir dir="${maven.docs.dest}/reference/plugins" />
      
        <!-- copy them all to ${maven.docs.dest}/reference/plugins/${plugin.id}/ -->
        <fileScanner var="pluginProjects">
          <fileset dir="${basedir}">
            <include name="src/plugins-build/*/project.xml" />
          </fileset>
        </fileScanner>
        <j:forEach items="${pluginProjects.iterator()}" var="plugin">
          <j:set var="pluginName" value="${plugin.parentFile.name}" />
          <mkdir dir="${maven.docs.dest}/reference/plugins/${pluginName}/" />
          <copy toDir="${maven.docs.dest}/reference/plugins/${pluginName}/">
            <fileset dir="src/plugins-build/${pluginName}/target/docs/">
              <include name="**" />
            </fileset>
          </copy>
        </j:forEach>
      </j:if>
    </preGoal>
  
    <!-- ================================================================== -->
    <!-- M A V E N  D I S T R I B U T I O N  T E S T  A I D S               -->
    <!-- ================================================================== -->
    <!-- NOTE:                                                              -->
    <!-- Make sure you get rid of as many (all ideally) SNAPSHOT jars       -->
    <!-- as possible.                                                       -->
    <!-- ================================================================== -->
    <!-- 1. (Re)move current Maven installation                             -->
    <!-- 2. Bootstrap                                                       -->
    <!-- 3. maven maven:installer                                           -->
    <!-- 4. Install maven (with the freshly created installer)              -->
    <!-- 5. maven                                                           -->
    <!-- 6. maven site                                                      -->
    <!-- ================================================================== --> 
  
    <postGoal name="java:jar-resources">
      <j:if test="${maven.test.distribution}">
        <echo>Using test log4j.properties file ...</echo>
        <copy 
          file="src/test/log4j.properties" 
          todir="${maven.build.dest}"
          overwrite="true"
        />
      </j:if>
    </postGoal>
    
    <!-- Use build:start hook to nuke the debug log files -->
    
    <!--
    <postGoal name="build:start">
      <j:if test="${maven.test.distribution}">
        <delete>
          <fileset dir="${basedir}">
            <include name="log*"/>
          </fileset>
        </delete>
      </j:if>
    </postGoal>
    -->
    
    <!--
    <preGoal name="site:generate">
      <attainGoal name="clover"/>
    </preGoal>
    -->
    
    <preGoal name="java:jar-resources">
      <!-- We just want a generic config for the CLI (that doesn't have to be maintained -->
    	<copy file="src/test/org/apache/maven/DefaultMavenTest.xml"
    		  toFile="server/target/classes/org/apache/maven/server/XMLThing.xml"/>
    </preGoal>
    
    <goal name="build-micro-ant-jar">
    
    </goal>
  
  </project>
  
  
  

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