This is mavenised Luke: Lucene Toolbox Project
Java Other
Pull request Compare This branch is 154 commits ahead of sonarme:master.


Luke, the Lucene Toolbox Project

Luke is the GUI tool for introspecting your Lucene / Solr / Elasticsearch index. It allows:

  • Viewing your documents and analyzing their field contents (for stored fields)
  • Searching in the index
  • Performing index maintenance: index sanity checking, index optimization (take a backup before running this!)
  • Reading index from hdfs
  • Exporting the index or portion of it into an xml format
  • Testing your custom Lucene analyzers

Recent Changes


Luke discussion group

Luke google group

Intro video about features

This lightning talk was delivered by Dmitry Kan on ApacheCon 2015 in Austin, Texas. ScreenShot

Brief project history

  • The original author is Andrzej Bialecki
  • The project has been mavenized by Neil Ireson (see google group discussion here)
  • The project has been ported to Lucene trunk (marked as 5.0 at the time) by Dmitry Kan
  • The project has been back-ported to Lucene 4.3 by sonarname, who later decided not to continue supporting the project
  • There are updates to the (non-mavenized) project done by tarzanek

This project's goal

  1. Keep the project mavenized (compatible with Apache Lucene and Solr style)
  2. To port the thinlet UI to an ASL compliant license framework so that it can be contributed back to Apache Lucene. Current work is done with Apache Pivot ( Grab a released version of pivoted luke for lucene 5.2.1 here:
  3. Maintain a single point of trust for the development and updates of the tool. That said, everyone is welcome to join.


Launching luke

  1. Clone the repository.
  2. Run mvn install from the project directory. (Make sure you have Java and Maven installed before doing this)
  3. Use or luke.bat for launching luke from the command line based on the OS you are in.

(Alternatively, for older verions of luke you can directly download the jar file from the releases page and run it with the command java -jar luke-with-deps.jar)

Running luke with a custom analyzer or codec

See for an example of launching luke with custom components.


The documentation is being written along the way of discovering the luke's usage scenarios.

You are free and welcome to contribute you findings!

Feature / bug fix requests

Found bug? Missing a useful feature? Raise an issue here:

Or, and btw, the pull requests are welcome as well!


All of the releases you find under the "releases" link above are versioned after the Lucene's version they use.

Usually we don't do releases for minor version upgrades, because the major release usually can read the index of the next minor release.

An example: lucene 4.8.0 can read the index generated by lucene 4.8.1. Hence the luke 4.8.0 can read too.

Conclusion: in order to find a luke release that can read an index of your version of Lucene, pick the closest major version and download the luke for that from the releases page above.

Where is luke 4.4.0 ?

There is no separate luke 4.4.0 release, but luke 4.5.0 should open the Lucene 4.4.0 index just fine.


The license for the code is ALv2, excluding the license of the thinlet library that is used for the UI.