Apache Lucene is a high-performance, full featured text search engine library written in Java.
This README file only contains basic setup instructions. For more comprehensive documentation, visit:
We‘ll assume that you know how to get and set up the JDK - if you don’t, then we suggest starting at https://jdk.java.net/ and learning more about Java, before returning to this README. Lucene runs with Java 11 or later.
Lucene uses Gradle for build control. Gradle is itself Java-based and may be incompatible with newer Java versions; you can still build and test Lucene with these Java releases, see help/tests.txt for more information.
NOTE: Lucene changed from Ant to Gradle as of release 9.0. Prior releases still use Ant.
You can clone the source code from GitHub:
or get Lucene source archives for a particular release from:
Download either a zip or a tarred/gzipped version of the archive, and uncompress it into a directory of your choice.
Run “./gradlew help”, this will show the main tasks that can be executed to show help sub-topics.
If you want to build Lucene, type:
NOTE: DO NOT use
gradle command that is already installed on your machine (unless you know what you'll do). The “gradle wrapper” (gradlew) does the job - downloads the correct version of it, setups necessary configurations.
The first time you run Gradle, it will create a file “gradle.properties” that contains machine-specific settings. Normally you can use this file as-is, but it can be modified if necessary.
./gradlew check will assemble Lucene and run all validation tasks (including unit tests).
./gradlew help will print a list of help guides that help understand how the build and typical workflow works.
If you want to build the documentation, type:
Please review the Contributing to Lucene Guide for information on contributing.