<?xml version="1.0"?>

<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->

<document>
  <properties>
    <title>Download Apache Maven</title>
    <author>Brett Porter</author>
    <author>Jason van Zyl</author>
    <author>John Casey</author>
    <author>Manfred Moser</author>
  </properties>
  <body>
    <section name="Downloading Apache Maven ${currentStableVersion}">

      <p>Apache Maven ${currentStableVersion} is the latest release and recommended version for all users.</p>
      <p>
          [if-any logo]
          <a href="[link]">
            <img align="right" src="[logo]" border="0"
                 alt="logo"/>
          </a>
          [end]
          The currently selected download mirror is
          <b>[preferred]</b>.
          If you encounter a problem with this mirror,
          please select another mirror.
          If all mirrors are failing, there are
          <i>backup</i>
          mirrors
          (at the end of the mirrors list) that should be available.
            You may also consult the
          <a href="https://www.apache.org/mirrors/">complete list of
            mirrors.</a>
        
        </p>

        <form action="[location]" method="get" id="SelectMirror">
          Other mirrors:
          <select name="Preferred">
            [if-any http]
            [for http]
            <option value="[http]">[http]</option>
            [end]
            [end]
            [if-any ftp]
            [for ftp]
            <option value="[ftp]">[ftp]</option>
            [end]
            [end]
            [if-any backup]
            [for backup]
            <option value="[backup]">[backup] (backup)</option>
            [end]
            [end]
          </select>
          <input type="submit" value="Change"/>
        </form>
      
      <a name="Requirements"/>
      <subsection name="System Requirements" id="Requirements">
        <p>
          <table>
            <tr>
              <td><b>Java Development Kit (JDK)</b></td>
              <td>Maven 3.3+ require JDK 1.7 or above to execute - they still allow you to build against 1.3 and other JDK versions
              <a href="/guides/mini/guide-using-toolchains.html">by Using Toolchains</a></td>
            </tr>
            <tr>
              <td><b>Memory</b></td>
              <td>No minimum requirement</td>
            </tr>
            <tr>
              <td><b>Disk</b></td>
              <td>Approximately 10MB is required for the Maven installation itself. In addition to that, additional disk space will
              be used for your local Maven repository. The size of your local repository will vary depending on usage but expect at
              least 500MB.</td>
            </tr>
            <tr>
              <td><b>Operating System</b></td>
              <td>No minimum requirement. Start up scripts are included as shell scripts and Windows batch files.</td>
            </tr>
          </table>
        </p>
      </subsection>

      <subsection name="Files">
      <p>Maven is distributed in several formats for your convenience. Simply pick a 
      ready-made binary distribution archive and follow the <a href="./install.html">
      installation instructions.</a>
      Use a source archive if you intend to build Maven yourself.</p>
      <p>
      In order to guard against corrupted downloads/installations, it is highly recommended to
      <a href="https://www.apache.org/dev/release-signing#verifying-signature">verify the signature</a>
      of the release bundles against the public <a href="https://downloads.apache.org/maven/KEYS">KEYS</a> used by the Apache Maven
      developers.</p>
      <table>
        <thead>
          <tr>
            <th></th>
            <th>Link</th>
            <th>Checksums</th>
            <th>Signature</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td>Binary tar.gz archive</td>
            <td><a href="[preferred]maven/maven-3/${currentStableVersion}/binaries/apache-maven-${currentStableVersion}-bin.tar.gz">apache-maven-${currentStableVersion}-bin.tar.gz</a></td>
            <td><a href="https://downloads.apache.org/maven/maven-3/${currentStableVersion}/binaries/apache-maven-${currentStableVersion}-bin.tar.gz.sha512">apache-maven-${currentStableVersion}-bin.tar.gz.sha512</a></td>
            <td><a href="https://downloads.apache.org/maven/maven-3/${currentStableVersion}/binaries/apache-maven-${currentStableVersion}-bin.tar.gz.asc">apache-maven-${currentStableVersion}-bin.tar.gz.asc</a></td>
          </tr>
          <tr>
            <td>Binary zip archive</td>
            <td><a href="[preferred]maven/maven-3/${currentStableVersion}/binaries/apache-maven-${currentStableVersion}-bin.zip">apache-maven-${currentStableVersion}-bin.zip</a></td>
            <td><a href="https://downloads.apache.org/maven/maven-3/${currentStableVersion}/binaries/apache-maven-${currentStableVersion}-bin.zip.sha512">apache-maven-${currentStableVersion}-bin.zip.sha512</a></td>
            <td><a href="https://downloads.apache.org/maven/maven-3/${currentStableVersion}/binaries/apache-maven-${currentStableVersion}-bin.zip.asc">apache-maven-${currentStableVersion}-bin.zip.asc</a></td>
          </tr>
          <tr>
            <td>Source tar.gz archive</td>
            <td><a href="[preferred]maven/maven-3/${currentStableVersion}/source/apache-maven-${currentStableVersion}-src.tar.gz">apache-maven-${currentStableVersion}-src.tar.gz</a></td>
            <td><a href="https://downloads.apache.org/maven/maven-3/${currentStableVersion}/source/apache-maven-${currentStableVersion}-src.tar.gz.sha512">apache-maven-${currentStableVersion}-src.tar.gz.sha512</a></td>
            <td><a href="https://downloads.apache.org/maven/maven-3/${currentStableVersion}/source/apache-maven-${currentStableVersion}-src.tar.gz.asc">apache-maven-${currentStableVersion}-src.tar.gz.asc</a>
            </td>
          </tr>
          <tr>
            <td>Source zip archive </td>
            <td><a href="[preferred]maven/maven-3/${currentStableVersion}/source/apache-maven-${currentStableVersion}-src.zip">apache-maven-${currentStableVersion}-src.zip</a></td>
            <td><a href="https://downloads.apache.org/maven/maven-3/${currentStableVersion}/source/apache-maven-${currentStableVersion}-src.zip.sha512">apache-maven-${currentStableVersion}-src.zip.sha512</a></td>
            <td><a href="https://downloads.apache.org/maven/maven-3/${currentStableVersion}/source/apache-maven-${currentStableVersion}-src.zip.asc">apache-maven-${currentStableVersion}-src.zip.asc</a></td>
          </tr>
        </tbody>
      </table>
      <ul>
        <li><a href="./docs/${currentStableVersion}/release-notes.html">Release Notes</a></li>
        <li><a href="./ref/${currentStableVersion}/">Reference Documentation</a></li>
        <li><a href="./maven-site-1.0-site.jar">Apache Maven Website As Documentation Archive</a></li>
        <!-- not currently generated on the CMS due to the profile, probably also badly formattted
           <li>a <a href="./apache-maven.pdf">PDF file.</a></li>
        -->
        <li><a href="[preferred]maven/">All current release sources (plugins, shared libraries,...) available at https://downloads.apache.org/maven/</a></li>
        <li><a href="./scm.html">latest source code from source repository</a></li>
        <li>Distributed under the <a href="https://www.apache.org/licenses/">Apache License, version 2.0</a></li>
      </ul>
      </subsection>

      <subsection name="Previous Releases">
        <p>It is strongly recommended to use the latest release version of Apache Maven to take advantage of newest features and bug fixes.</p>
        
        <p>If you still want to use an old version you can find more information in the
        <a href="./docs/history.html">Maven Releases History</a> and can download files from 
        the  <a href="https://archive.apache.org/dist/maven/maven-3/">archives</a> for versions 3.0.4+
        and <a href="https://archive.apache.org/dist/maven/binaries/">legacy archives</a> for earlier releases.</p>
      </subsection>
    </section>
  </body>
</document>

