<!DOCTYPE html>
<html lang="en">

<head>

    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <meta name="description" content="Apache Object Oriented Data Technology (OODT) is the smart way to integrate and archive your processes, your data, and its metadata. It facilitates the generation, processing, management, distribution, analysis of data management, data archiving, and data analytics systems allowing for the integration of data, computation, visualization and other components.
">

    <meta name="author" content="Apache OODT">

    <title>Apache OODT - Distributed Data Management</title>

    <!-- Bootstrap Core CSS -->
    <link href="/css/bootstrap.min.css" rel="stylesheet">

    <!-- Custom CSS -->
    <link href="/css/stylish-portfolio.css" rel="stylesheet">

    <!-- Custom Fonts -->
    <link href="/font-awesome/css/font-awesome.min.css" rel="stylesheet" type="text/css">
    <link href="http://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,700,300italic,400italic,700italic"
          rel="stylesheet" type="text/css">

    <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
    <!--[if lt IE 9]>
    <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
    <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
    <![endif]-->

</head>


<body>


<nav class="navbar navbar-default">
    <div class="container-fluid">
        <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse"
                    data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
            <a class="navbar-brand" href="#"><img src="/img/oodt_asf_logo_sm.png"/></a>
        </div>

        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">

            <ul class="nav navbar-nav">
                <!--<a id="menu-close" href="#" class="btn btn-light btn-lg pull-right toggle"><i class="fa fa-times"></i></a>-->

                <li>
                    <a href="/">Home</a>
                </li>
                <li>
                    <a href="/blog">News</a>
                <li>
                    <a href="/site_docs/oodt/index.html">Components</a>
                </li>
                <li>
                    <a href="/documentation.html">Documentation</a>
                </li>
                <li>
                    <a href="/community.html">Community</a>
                </li>
                <li>
                    <a href="/users.html">Users</a>
                </li>
                <li>
                    <a href="/download.html">Download</a>
                </li>

            </ul>
        </div>
    </div>
</nav>

<div class="container-fluid">

    <div class="row">
        <div class="col-md-offset-2 col-md-6">
            <h1>Download</h1>
            <p>Thanks for checking out Apache OODT. On this page you can download our official release.<br/> <strong>N.B.
                OODT is ONLY released as source code and NOT binary</strong>. This is because you will most likely want
                to recompile various aspects of the codebase with configuration before deploying an OODT system.</p>

            <p>See the <a href="https://raw.githubusercontent.com/apache/oodt/1.9.1/CHANGES.txt">1.9.1-CHANGES.txt</a>
                file for more information on the list of updates in this release.</p>

            <p>OODT is always distributed under the <a href="https://www.apache.org/licenses/LICENSE-2.0.html">Apache
                License, version 2.0</a>.</p>

            <h2>Prerequisites</h2>
            <p>You require <a href="http://maven.apache.org/">Apache Maven</a> to build the OODT source code. Maven can
                either be downloaded and installed manually or alternatively via command line via your operating system
                package manager.</p>

            <h4>Operating Systems</h4>

            <ul>
                <li>UNIX (Linux, OS/X, Solaris, BSD, etc.)</li>
                <li>Windows with Cygwin</li>
            </ul>

            <h4>Software</h4>

            <ul>
                <li>Java and/or Python</li>
                <li>Maven</li>
            </ul>

            <h4>Required knowledge</h4>
            <ul>
                <li>XML</li>
                <li>Java and/or Python (in order to customize and extend)</li>
            </ul>

            <div class="jumbotron">
                <h2>Latest Release</h2>
                <p>
                    OCT-2021: The Latest Apache™ OODT version 1.9.1 is now released and available for download.
                </p>
                <p>
                    <a href="http://www.apache.org/dyn/closer.lua/oodt" class="btn btn-primary">
                        Download OODT
                    </a>
                </p>
            </div>

            <h2>Mirrors</h2>
            <p>The link in the Mirrors column below should display a default mirror selection based on your inferred
                location. If (when you browse to it) you do not see that page, try a different browser. The checksum and
                signature are links to the originals on the main distribution server.</p>

            <div class="panel panel-default">
                <table class="table table-hover">
                    <tr>
                        <th>Version</th>
                        <th>Mirrors</th>
                        <th>Signature</th>
                        <th>KEYS</th>
                        <th>Checksum</th>
                    </tr>
                    <tr class="bg-success">
                        <td>
                            Apache OODT 1.9.1 (zip)
                            <strong>(latest)</strong>
                        </td>
                        <td>
                            <a href="http://www.apache.org/dyn/closer.cgi/oodt/apache-oodt-1.9.1-src.zip">apache-oodt-1.9.1-src.zip</a>
                        </td>
                        <td>
                            <a href="http://www.apache.org/dist/oodt/apache-oodt-1.9.1-src.zip.asc">apache-oodt-1.9.1-src.zip.asc</a>
                        </td>
                        <td>
                            <a href="http://www.apache.org/dist/oodt/KEYS">KEYS</a>
                        </td>
                        <td>
                            <a href="http://www.apache.org/dist/oodt/apache-oodt-1.9.1-src.zip.sha256">SHA256</a>
                            <a href="http://www.apache.org/dist/oodt/apache-oodt-1.9.1-src.zip.sha512">SHA512</a>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            Apache OODT 1.9 (zip)
                        </td>
                        <td>
                            <a href="http://www.apache.org/dyn/closer.cgi/oodt/apache-oodt-1.9-src.zip">apache-oodt-1.9-src.zip</a>
                        </td>
                        <td>
                            <a href="http://archive.apache.org/dist/oodt/apache-oodt-1.9-src.zip.asc">apache-oodt-1.9-src.zip.asc</a>
                        </td>
                        <td>
                            <a href="https://raw.githubusercontent.com/apache/oodt/1.9/KEYS">KEYS</a>
                        </td>
                        <td>
                            <a href="http://archive.apache.org/dist/oodt/apache-oodt-1.9-src.zip.sha256">SHA256</a>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            Apache OODT 1.2.1 (zip)
                        </td>
                        <td>
                            <a href="http://www.apache.org/dyn/closer.cgi/oodt/apache-oodt-1.2.1-src.zip">apache-oodt-1.2.1-src.zip</a>
                        </td>
                        <td>
                            <a href="http://archive.apache.org/dist/oodt/apache-oodt-1.2.1-src.zip.asc">apache-oodt-1.2.1-src.zip.asc</a>
                        </td>
                        <td>
                            <a href="https://raw.githubusercontent.com/apache/oodt/1.2.1/KEYS">KEYS</a>
                        </td>
                        <td>
                            <a href="http://archive.apache.org/dist/oodt/apache-oodt-1.2.1-src.zip.md5">MD5</a>
                            <a href="http://archive.apache.org/dist/oodt/apache-oodt-1.2.1-src.zip.sha1">SHA1</a>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            Apache OODT 1.2 (zip)
                        </td>
                        <td>
                            <a href="http://www.apache.org/dyn/closer.cgi/oodt/apache-oodt-1.2-src.zip">apache-oodt-1.2-src.zip</a>
                        </td>
                        <td>
                            <a href="http://archive.apache.org/dist/oodt/apache-oodt-1.2-src.zip.asc">apache-oodt-1.2-src.zip.asc</a>
                        </td>
                        <td>
                            <a href="https://raw.githubusercontent.com/apache/oodt/1.2/KEYS">KEYS</a>
                        </td>
                        <td>
                            <a href="http://archive.apache.org/dist/oodt/apache-oodt-1.2-src.zip.md5">MD5</a>
                            <a href="http://archive.apache.org/dist/oodt/apache-oodt-1.2-src.zip.sha1">SHA1</a>
                        </td>
                    </tr>
                </table>
            </div>
            <h3>Verify Releases</h3>
            <p>It is essential that you verify the integrity of the downloaded files using the PGP, SHA256 and/or SHA512
                signatures. published with every OODT release.</p>

            <p>Please read <a href="http://httpd.apache.org/dev/verification.html">Verifying Apache HTTP Server
                Releases</a> for more information on why you should verify our releases.</p>

            <p>We strongly recommend you verify your downloads with at least both PGP and SHA256/SHA512. Guidance for
                doing so is provided below.</p>

            <h4>PGP Signature</h4>
            <p>The PGP signatures can be verified using PGP or GPG. First download the <a
                    href="https://downloads.apache.org/oodt/KEYS">KEYS</a> as well as the asc signature file for
                the relevant distribution.</p>

            <p>N.B.Make sure you get these files from the <a href="http://www.apache.org/dist/oodt/">main distribution
                directory</a>, rather than from a mirror. Then verify the signatures using the following:</p>

            <code>$ gpg --import KEYS $ gpg --verify apache-oodt-1.9.1-src.zip.asc</code>
            <p>The files in the most recent release are signed by 2048R/5E91D429 Tom Barber (CODE SIGNING KEY)</p>

            <h4>SHA256 Signature</h4>
            <p>Alternatively, you can verify the SHA256 signature on the files. A unix program called sha256sum is
                included in many unix distributions.</p>

            <code>$ sha256sum apache-oodt-1.9.1-src.zip</code>
            <p>... output should match the string in apache-oodt-1.9.1-src.zip.sha256</p>

            <h4>SHA512 Signature</h4>
            <p>Alternatively, you can verify the SHA512 signature on the files. A unix program called sha512sum is
                included in many unix distributions.</p>

            <code>$ sha512sum apache-oodt-1.9.1-src.zip</code>
            <p>... output should match the string in apache-oodt-1.9.1-src.zip.sha512</p>

        </div>
        <div class="col-md-2">
            <h1>Previous Releases</h1>

            <p>
                Release Date: OCT-2019<br/>
                Version: OODT 1.9<br/>
                <a href="http://www.apache.org/dyn/closer.lua/oodt/apache-oodt-1.9-src.zip">Download</a><br/>
                <a href="https://raw.githubusercontent.com/apache/oodt/1.9/KEYS">Verification KEYS</a>
            </p>

            <p>
                Release Date: AUG-2018<br/>
                Version: OODT 1.2.1<br/>
                <a href="http://www.apache.org/dyn/closer.lua/oodt/apache-oodt-1.2.1-src.zip">Download</a><br/>
                <a href="https://raw.githubusercontent.com/apache/oodt/1.2.1/KEYS">Verification KEYS</a>
            </p>

            <p>
                Release Date: AUG-2017<br/>
                Version: OODT 1.2<br/>
                <a href="http://www.apache.org/dyn/closer.lua/oodt/apache-oodt-1.2-src.zip">Download</a><br/>
                <a href="https://raw.githubusercontent.com/apache/oodt/1.2/KEYS">Verification KEYS</a>
            </p>

            <p>
                Release Date: JUL-2017<br/>
                Version: OODT 1.1<br/>
                <a href="http://www.apache.org/dyn/closer.lua/oodt/apache-oodt-1.1-src.zip">Download</a><br/>
                <a href="https://raw.githubusercontent.com/apache/oodt/1.1/KEYS">Verification KEYS</a>
            </p>

            <p>
                Release Date: JUN-2016<br/>
                Version: OODT 1.0<br/>
                <a href="http://www.apache.org/dyn/closer.lua/oodt/apache-oodt-1.0-src.zip">Download</a><br/>
                <a href="https://raw.githubusercontent.com/apache/oodt/1.0/KEYS">Verification KEYS</a>
            </p>

        </div>
    </div>
</div>

<footer class="sitefooter">
    <div class="container">
        <div class="row">
            <div class="col-lg-10 col-lg-offset-1 text-center">
                <a href="http://www.apache.org/events/current-event.html">
                    <img src="http://www.apache.org/events/current-event-234x60.png"/>
                </a>
                <h4><strong>Apache OODT</strong>
                </h4>
                <p>

                </p>
                <ul class="list-unstyled">
                    <li><i class="fa fa-envelope-o fa-fw"></i> <a
                            href="mailto:dev@oodt.apache.org">dev@oodt.apache.org</a>
                    </li>
                </ul>
                <br>
                <ul class="list-inline">
                    <!--          <li>
                                <a href="https://facebook.com/"><i class="fa fa-facebook fa-fw fa-3x"></i></a>
                              </li>-->
                    <li>
                        <a href="https://twitter.com/apache_oodt"><i class="fa fa-twitter fa-fw fa-3x"></i></a>
                    </li>
                    <li>
                        <a href="https://github.com/apache/oodt"><i class="fa fa-github fa-fw fa-3x"></i></a>
                    </li>
                </ul>
                <hr class="small">
                <p class="text-muted">Copyright &copy; The Apache Foundation 2018</p>
            </div>
        </div>
    </div>
</footer>

<!-- jQuery -->
<script src="/js/jquery.js"></script>

<!-- Bootstrap Core JavaScript -->
<script src="/js/bootstrap.min.js"></script>

<!-- Custom Theme JavaScript -->
<script src="/js/custom.js"></script>


</body>

</html>
