Extract all text from a PDF or Word document in a Java app with three lines of code
Build a document search index by running Tika as a server that parses any file type you send it
Pull author, creation date, and file type metadata from a batch of mixed-format files in one pass
Detect the file type of an unknown file and extract whatever text content it contains
| apache/tika | openhft/chronicle-queue | undertow-io/undertow | |
|---|---|---|---|
| Stars | 3,746 | 3,745 | 3,749 |
| Language | Java | Java | Java |
| Setup difficulty | easy | moderate | moderate |
| Complexity | 2/5 | 4/5 | 4/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires Java 17 or later, older JDK versions are no longer supported as of April 2025.
Apache Tika is a Java library that reads files of many different formats and pulls out the text and metadata inside them. Feed it a PDF, a Word document, an image, an audio file, or dozens of other types, and it returns the plain text content along with information like the author, creation date, and file type. It does this by wrapping a large collection of existing document parsing libraries into one consistent interface. Developers can use Tika by adding it as a dependency to a Java project, running it as a command-line tool, or connecting to it as a server. The quick-start example in the README is three lines of Java code: create a Tika object, point it at a file, get back a string of text. The project requires Java 17 or later. Support for older versions ended in April 2025. Building from source uses Maven, and a Maven wrapper script is included so you do not need Maven pre-installed. Docker is used for some integration tests but is optional. Tika is part of the Apache Software Foundation and is released under the Apache 2.0 open source license. Pre-built downloads are available from the project website and through the Maven Central package repository.
Apache Tika is a Java library that pulls text and metadata out of hundreds of file formats, PDFs, Word docs, images, audio files, through one consistent three-line API.
Mainly Java. The stack also includes Java, Maven, Docker.
Use freely for any purpose, including commercial use, as long as you keep the copyright and Apache 2.0 license notice.
Setup difficulty is rated easy, with roughly 5min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.