Build optimized Docker and OCI container images for Java applications with Maven or Gradle, without a Docker daemon.
oracle/opengrok
A fast source code search and cross-reference engine written in Java, able to index code and version control history.
Open-source alternative to:Sourcegraph
- Stars
- 5,005
- Forks
- 841
- Open issues
- 556
- Last commit
- 10 hours ago
What is it?
OpenGrok is a source code search and cross-reference engine written in Java. It indexes a source tree so developers can search for symbols, full text, and file paths, then navigate between definitions and references in a web interface.
It understands many program file formats and can read version control histories from several source code management systems, letting users browse changes alongside the code. Installation and configuration are covered in the project wiki, and the project also ships a Docker container option.
The project uses semantic versioning, and its release notes distinguish updates that require a full reindex from those that only need a redeploy of the web application.
Key features
- 01Full-text and symbol search across large source trees.
- 02Cross-referencing that links definitions and references in the web UI.
- 03Understands many program file formats.
- 04Reads version control history from several source code management systems.
- 05Available as a Docker container.
Use cases
- Searching and navigating a large legacy codebase spread across many projects.
- Giving a team a central, self-hosted web view of internal source repositories.
- Tracing where functions and symbols are defined and used across a monorepo.
Quick start
- 1
Read the setup guide on the project wiki
- 2
Or run it as a Docker container using the docker README
Things to know
- Installation steps are not in the README and are delegated to an external wiki page.
- Minor version upgrades require a full clean reindex of your repositories.
Topics
FAQ
- What is opengrok?
- A fast source code search and cross-reference engine written in Java, able to index code and version control history. OpenGrok is a source code search and cross-reference engine written in Java. It indexes a source tree so developers can search for symbols, full text, and file paths, then navigate between definitions and references in a web interface.
- Is opengrok free to use? What license does it have?
- opengrok is open source under the Other license. Check the license terms before using it in commercial products.
- Is opengrok still maintained?
- Actively maintained. The last commit to opengrok was on Oct 19, 2026.
- What can I use opengrok for?
- Searching and navigating a large legacy codebase spread across many projects. Giving a team a central, self-hosted web view of internal source repositories. Tracing where functions and symbols are defined and used across a monorepo.
- How do I install opengrok?
- Read the setup guide on the project wiki Or run it as a Docker container using the docker README
- Where can I get opengrok?
- The source code and installation instructions are on GitHub: https://github.com/oracle/opengrok
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Black is an opinionated, deterministic Python code formatter that rewrites files in place with minimal diffs.
Generates API client SDKs, server stubs, and docs in dozens of languages and frameworks from OpenAPI specs (v2 and v3).
A native macOS code editor built with Swift, offering syntax highlighting, completion, git integration, debugging and extensions.
Fast, open-source static analysis CLI that finds bugs and enforces coding standards using code-like patterns instead of regex or ASTs.
Self-hosted code quality and security platform that scans projects for bugs, vulnerabilities and maintainability issues, with Quality Gates for CI pipelines.