<!doctype html>
<html>
  <head>
<!--
    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.
-->
<link href="/theme/css/lucene/global.css?v=0e493d7a" rel="stylesheet" type="text/css">

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
<meta name="Distribution" content="Global"/>
<meta name="Robots" content="index,follow"/>

<script type="text/javascript" src="/theme/javascript/lucene/prototype.js?v=0e493d7a"></script>
<script type="text/javascript" src="/theme/javascript/lucene/effects.js?v=0e493d7a"></script>
<script type="text/javascript" src="/theme/javascript/lucene/slides.js?v=0e493d7a"></script>
<script src="https://www.apachecon.com/event-images/snippet.js"></script>    <title>Apache Lucene - Lucene™ System Requirements</title>
<meta name="keywords"
       content="apache, apache lucene, apache solr, solr, lucene
       search, information retrieval, spell checking, faceting, inverted index,
       open source"/>    <meta property="og:type" content="website" />
    <meta property="og:url" content="https://lucene.apache.org/core/systemreqs.html"/>
    <meta property="og:title" content="Lucene™ System Requirements"/>
    <meta property="og:description" content=""/>
    <meta property="og:image" content="https://lucene.apache.org/theme/images/lucene/lucene_og_image.png?v=0e493d7a"/>
    <meta property="og:image:secure_url" content="https://lucene.apache.org/theme/images/lucene/lucene_og_image.png?v=0e493d7a"/>
<link rel="shortcut icon" type="image/png"
                                                 href="/theme/images/lucene/lucene-favicon.png?v=0e493d7a"/><link href="/theme/css/lucene/core.css?v=0e493d7a" rel="stylesheet" type="text/css">
  </head>
  <body id="home">
    <div id="wrap">
      <div id="header">
        <div id="logo" style="float:left">
          <a href="/">
            <img border="0" src="/theme/images/lucene/lucene_logo_green_300.png?v=0e493d7a" alt="Lucene Logo"/>
          </a>
        </div>
<!-- TODO: Search disabled as it does not work, 2021-02-21
<div id="search" style="float:right;zoom:1">
  <form id="quick-search" method="GET" action="https://sematext.com/opensee/lucene" name="searchform">
    <fieldset>
      <input type="search" id="q" name="q" placeholder="Search with Apache Solr..." class="class1 class2 hint" accesskey="q">
    </fieldset>
  </form>
</div>-->
        <div id="nav">
          <ul>
<li><a href="/core/index.html">Core</a></li>
<li><a href="/core/corenews.html">News</a></li>
<li><a href="/core/downloads.html">Download</a></li>
<li><a href="/core/discussion.html">Mailing Lists</a></li>
<li><a href="/core/documentation.html">Documentation</a></li>
<li><a href="/core/quickstart.html">Tutorials</a></li>
<li><a href="https://github.com/apache/lucene/issues">Issue Tracker</a></li>
<li><a class="last" href="/">Lucene TLP</a></li>
          </ul>
        </div>

<div id="slides">
  <div class="slideshow" id="mantleSlides">
<div id="slide1">
  <div class="callout">
    Ultra-fast Search Library<br/>
  </div>
  <div class="descwrapper">
    <div class="description">
      Apache Lucene sets the standard for search and indexing performance
    </div>
  </div>
  <div class="mantle">
    <img alt="Apache Lucene" src="/theme/images/lucene/core/mantle-lucene.png?v=0e493d7a"/>
  </div>
</div>
<div id="slide2" style="display:none">
  <div class="callout">
    Proven search capabilities<br/>
  </div>
  <div class="descwrapper">
    <div class="description">
      Lucene is the de facto standard for search libraries
    </div>
  </div>
  <div class="mantle">
    <img alt="Lucene Power" src="/theme/images/lucene/mantle-power.png?v=0e493d7a"/>
  </div>
</div>
<div id="slide3" style="display:none">
  <div class="callout">
    Innovation and Maturity
  </div>
  <div class="descwrapper">
    <div class="description">
      Lucene has proven stability as well as a track record of innovation
    </div>
  </div>
  <div class="mantle">
    <img alt="Apache Lucene" src="/theme/images/lucene/core/mantle-innovation.png?v=0e493d7a"/>
  </div>
</div>
<div id="slide4" style="display:none">
  <div class="callout">
    Apache 2.0 licensed
  </div>
  <div class="descwrapper">
    <div class="description">
      Apache Lucene is distributed under a commercially friendly Apache Software license
    </div>
  </div>
  <div class="mantle">
    <img alt="Apache Software Foundation" src="/theme/images/lucene/mantle-asf.png?v=0e493d7a"/>
  </div>
</div>  </div>
  <div class="controls">
    <a class="next" id="next" title="Next" href="#">Next</a>
    <a class="previous" id="previous" title="Previous" href="#">Previous</a>
    <a class="start" id="start" title="Start" href="#" style="display: none; ">Start</a>
    <a class="stop" id="stop" title="Stop" href="#">Stop</a>
  </div>

  <script type="text/javascript">
    function StartSlides() {
      new Slides('mantleSlides');
    }
document.observe('dom:loaded', StartSlides);
  </script>
</div> <!-- End #slides -->
      </div> <!-- End #header -->

      <div id="content-wrap" class="clearfix">
        <div id="main">
<div>
  <div>
  <h1 class="title">Lucene™ System Requirements</h1>
  
</div>

  <p>The system requirements of the various Lucene releases are listed on their documentation pages:</p>
  <ul>
    <li><a href="/core/9_10_0/SYSTEM_REQUIREMENTS.html">9.10.0</a></li>
    <li><a href="/core/8_11_3/SYSTEM_REQUIREMENTS.html">8.11.3</a></li>
  </ul>
</div>
        </div>
        <div id="sidebar">
<div class="button-wrapper">
  <div class="button-green">
    <a href="/core/downloads.html">Download</a>
    <div class="flap top">Click to</div>
    <div class="flap bottom">Apache Lucene 9.10.0</div>
  </div>
  <div class="download-desc">Apache Lucene 9.10.0</div>
</div>

<h1 id="resources">Resources</h1>
<ul>
  <li><a href="/core/discussion.html">Mailing Lists</a></li>
  <li><a href="/core/developer.html">Developer</a></li>
  <li><a href="/core/features.html">Features</a></li>
  <li><a href="/core/downloads.html">Releases</a></li>
  <li><a href="/core/systemreqs.html">System Requirements</a></li>
</ul>

<h1 id="release-docs">Release Docs</h1>
<ul>
  <li><a href="/core/9_10_0/index.html">9.10.0</a></li>
</ul>

<h1 id="about">About</h1>
<ul>
  <li><a href="https://www.apache.org/licenses/">License</a></li>
  <li><a href="/whoweare.html">Who We are</a></li>
</ul>

<h1 id="events">Events</h1>
<ul>
  <a class="acevent" data-format="square" data-mode="light" data-width="160" data-style="border: 1px solid lightgrey"></a>
</ul>

<h1 id="asf-links">ASF links</h1>
<ul>
  <li><a href="https://www.apache.org">Apache Software Foundation</a></li>
  <li><a href="https://www.apache.org/foundation/thanks.html">Thanks</a></li>
  <li><a href="https://www.apache.org/foundation/sponsorship.html">Become a Sponsor</a></li>
  <li><a href="https://www.apache.org/security/">Security</a></li>
</ul>

<h1 id="related-projects">Related Projects</h1>
<ul>
  <li><a href="https://solr.apache.org">Apache Solr</a></li>
  <li><a href="http://hadoop.apache.org">Apache Hadoop</a></li>
  <li><a href="http://manifoldcf.apache.org/">Apache ManifoldCF</a></li>
  <li><a href="http://lucenenet.apache.org/">Apache Lucene.Net</a></li>
  <li><a href="http://mahout.apache.org">Apache Mahout</a></li>
  <li><a href="http://nutch.apache.org">Apache Nutch</a></li>
  <li><a href="http://opennlp.apache.org/">Apache OpenNLP</a></li>
  <li><a href="http://tika.apache.org">Apache Tika</a></li>
  <li><a href="http://zookeeper.apache.org">Apache Zookeeper</a></li>
</ul>

<div class="status">
  <!-- No SVN anymore; TODO: how to do Git? INFRA does not have a plugin!
    <div id="svn"></div>
  -->
</div>        </div>
      </div> <!-- End #content-wrap -->

<div id="footer">
  <div class="copyright">
    <p>
      Copyright &copy; 2011-2024 The Apache Software Foundation, Licensed under
      the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.  <a href="/privacy.html">Privacy Policy</a>      <br/>
      Apache and the Apache feather logo are trademarks of The Apache Software Foundation.  Apache Lucene, Apache Solr and their
      respective logos are trademarks of the Apache Software Foundation.  Please see the <a href="https://www.apache.org/foundation/marks/">Apache Trademark Policy</a>
      for more information.
    </p>
  </div>
</div>    </div> <!-- End #wrap -->
  </body>
</html>