Browse free open source Java Libraries and projects below. Use the toggles on the left to filter open source Java Libraries by OS, license, language, programming language, and project status.

  • 1
    Jackcess
    A pure Java library for reading from and writing to MS Access databases.
    Leader badge
    Downloads: 32 This Week
    Last Update:
    See Project
  • 2
    Java Neural Network Framework Neuroph
    Neuroph is lightweight Java Neural Network Framework which can be used to develop common neural network architectures. Small number of basic classes which correspond to basic NN concepts, and GUI editor makes it easy to learn and use.
    Leader badge
    Downloads: 30 This Week
    Last Update:
    See Project
  • 3

    ConcatPDF

    PDF Concatenation Tool

    ConcatPDF is the tool to concatenate PDF files. It can concatenate, extract, encrypt, decrypt, configure PDF files, convert image files to PDF. GUI version and CUI version are both available. iText.NET is iText porting on .NET Framework by J#. This library allows you to generate PDF, (X)HTML, XML, RTF files on Microsoft.NET Framework including ASP.NET.
    Leader badge
    Downloads: 43 This Week
    Last Update:
    See Project
  • 4
    Booklore

    Booklore

    Digital library with smart shelves

    Booklore is a comprehensive self-hosted digital library platform that helps readers organize, manage, track, and even read their personal collections of books and comics from a centralized web interface. It provides powerful metadata management that automatically fetches rich details like titles, authors, covers, and publication info so your library looks organized and beautiful without manual data entry. Users can create smart shelves with custom filters, build dynamic collections that update automatically, and search through thousands of entries instantly, turning chaotic folders of files into a curated reading experience. Booklore supports multi-user access with granular permission controls, making it suitable for families, book clubs, or shared collections, and its built-in reader can display PDFs, EPUBs, and comic formats directly in a browser.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 5
    Brave

    Brave

    Java distributed tracing implementation compatible with Zipkin backend

    Brave is a distributed tracing instrumentation library. Brave typically intercepts production requests to gather timing data, correlate and propagate trace contexts. While typically trace data is sent to Zipkin server, third-party plugins are available to send to alternate services such as Amazon X-Ray. This repository includes dependency-free Java libraries and instrumentation for common components used in production services. For example, this includes trace filters for Servlet and log correlation for Apache Log4J. Brave's dependency-free tracer library works against JRE6+. This is the underlying api that instrumentation use to time operations and add tags that describe them. This library also includes code that parses X-B3-TraceId headers.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 6
    ButterKnife

    ButterKnife

    Bind Android views and callbacks to fields and methods

    ButterKnife is an annotation-based view binding library for Android that reduces boilerplate in Activities, Fragments, and custom views. Developers replace repetitive findViewById calls with BindView fields and define UI event handlers using annotations like @OnClick, with the library generating efficient binding code at compile time. Because it relies on annotation processing, there’s no reflection at runtime, keeping startup paths lean and predictable. The generated bind/unbind lifecycle helps avoid memory leaks by clearing references when views are destroyed. Butter Knife made UI code more readable and maintainable for years, especially in large codebases with complex layouts and many event hooks. While newer Android APIs now offer official view binding alternatives, the project remains a landmark example of how code generation can simplify everyday Android development.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 7
    Google Maps SDK for Android Samples

    Google Maps SDK for Android Samples

    Samples demonstrating how to use Maps SDK for Android

    Create dynamic, interactive and personalized experiences with maps, locations and geospatial experiences for your Android apps. Create an account, generate an API key, and start creating. Learn how to load the Maps SDK for Android and add a map with a bookmark to your web application. You can customize almost all aspects of the map, such as routes, landforms and places of interest, among others. Find the current location of an Android device and display details of the place or other place of interest in that location. Add bookmarks to a map, interact with click events, customize color and image, and more. Displays an information window with additional data and context when users press a bookmark. Customize user interaction by configuring integrated UI components and gestures. Listen to events on the map, including clicks on maps, clicks on markers, camera changes, and overlay events, among others.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 8
    HikariCP

    HikariCP

    A solid, high-performance, JDBC connection pool at last

    HikariCP is a high-performance JDBC connection pooling library designed to offer minimal overhead and maximum throughput. It aims for simplicity and stability, concentrating on fast connection acquisition and minimal latency under load. Its internals manage a pool of connections aggressively but smartly, with options such as leak detection, timeout thresholds, and adaptive connection retirement. Because it avoids heavy internal locking, it scales well in high-concurrency environments, making it a popular choice in microservices and high-throughput web backends. Metrics and instrumentation hooks (for example, via Dropwizard or Micrometer) allow runtime visibility into pool usage and health. HikariCP’s focus is on doing the essential work of pooling correctly and efficiently, rather than bundling extraneous features.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 9
    ImGui Java

    ImGui Java

    JNI based binding for Dear ImGui

    imgui-java is a comprehensive Java binding for Dear ImGui, the popular immediate-mode GUI library used for real-time tools and debug interfaces. This binding allows Java applications—including those using LWJGL or JOGL—to leverage ImGui’s fast and flexible GUI features without switching languages. With support for native backends and OpenGL rendering, imgui-java is perfect for game engines, development tools, and editors that need an intuitive GUI system. It includes integrations for multiple platforms and rendering contexts, with regular updates to match upstream ImGui releases.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 10
    JTS Topology Suite

    JTS Topology Suite

    Java library for creating and manipulating vector geometry.

    The JTS Topology Suite is a Java library for creating and manipulating vector geometry. It also provides a comprehensive set of geometry test cases, and the TestBuilder GUI application for working with and visualizing geometry and JTS functions.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 11
    Louvre

    Louvre

    A small customizable library useful to handle an image gallery

    A small customizable image picker. Useful to handle a gallery image pick action built-in your app.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 12
    TableView for Android

    TableView for Android

    Powerful Android library for displaying complex data structures

    TableView is a powerful Android library for displaying complex data structures and rendering tabular data composed of rows, columns and cells. TableView relies on a separate model object to hold and represent the data it displays. This repository also contains a sample app that is designed to show you how to create your own TableView in your application.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 13
    libsu

    libsu

    A complete solution for apps using root permissions

    libsu is a modern Android library that provides a safe, convenient API for executing commands with root privileges and interacting with the Android shell. Instead of ad-hoc Runtime.exec calls, it offers structured sessions, proper I/O streams, and lifecycle handling that works reliably across devices. The library focuses on developer ergonomics: thread-safe helpers, Kotlin-friendly APIs, and utilities for file operations, process management, and parcelable data transfer. It’s designed to interoperate smoothly with Magisk-based root environments while degrading gracefully on non-rooted devices when possible. Attention is given to security and correctness—avoiding resource leaks, handling timeouts, and containing elevated operations to explicit scopes. For apps that legitimately need privileged automation or maintenance tasks, libsu becomes the backbone that keeps the “root” parts predictable and testable.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 14
    openHAB Distribution

    openHAB Distribution

    The binary distribution of openHAB

    The open Home Automation Bus (openHAB) project aims to provide a universal integration platform for all things around home automation. It is a pure Java solution, fully based on OSGi. It is designed to be vendor-neutral as well as hardware/protocol-agnostic. openHAB brings together different bus systems, hardware devices, and interface protocols by dedicated bindings. These bindings send and receive commands and status updates on the openHAB event bus. This concept allows designing user interfaces with a unique look&feel, but with the possibility to operate devices based on a big number of different technologies. Besides the user interfaces, it also brings the power of automation logic across different system boundaries.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 15
    uCrop

    uCrop

    Image cropping library for Android

    We develop lots of different Android apps at Yalantis, and our experience shows that almost every application we deal with needs image cropping functionality. Image cropping can be used for various purposes, from ordinary adjustment of user profile images to more complex features that involve aspect ratio cropping and flexible image transformations. Since we want to provide all our customers with the best set of tools for image editing functionality, we decided to create uCrop, an image cropping library for Android. You might be wondering why we couldn’t just use one of the existing solutions for image cropping for Android. After all, you can find lots of them on Github and on the Android Arsenal. But here is the thing, none of these solutions could satisfy our requirements. Let’s take a quick look at the most popular open-source image cropping libraries and explain why they don’t quite fit the bill.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 16
    7-Zip-JBinding

    7-Zip-JBinding

    Java wrapper for 7z archiver engine

    Native (JNI) cross-platform library to extract (password protected, multi-part) 7z Zip Rar Tar Split Lzma Iso HFS GZip Cpio BZip2 Z Arj Chm Lhz Cab Nsis Deb Rpm Wim Udf archives and create 7z, Zip, Tar, GZip & BZip2 from Java.
    Leader badge
    Downloads: 44 This Week
    Last Update:
    See Project
  • 17
    Sesame

    Sesame

    Java RDF Framework

    This project is no longer actively maintained. It is succeeded by the Eclipse RDF4J project, which can be found at GitHub and at http://www.rdf4j.org/. Sesame is a de-facto standard framework for processing RDF data. This includes parsing, scalable storage, reasoning and full SPARQL 1.1 query/update support. Sesame offers a fully modular toolkit and an easy-to-use Java API that can be connected to all leading RDF storage solutions.
    Downloads: 25 This Week
    Last Update:
    See Project
  • 18
    Autobahn|Java

    Autobahn|Java

    WebSocket & WAMP in Java for Android and Java 8

    Client library providing WAMP on Java 8 (Netty) and Android, plus (secure) WebSocket for Android. The WebSocket layer is using a callback-based user API, and is specifically written for Android. Eg it does not run any network stuff on the main (UI) thread. The WAMP layer is using Java 8 CompletableFuture for WAMP actions (call, register, publish, and subscribe) and the Observer pattern for WAMP session, subscription and registration lifecycle events. The library is MIT licensed, maintained by the Crossbar.io Project, tested using the AutobahnTestsuite and published as a JAR to Maven and as a Docker toolchain image to Dockerhub.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 19
    EasyDeviceInfo

    EasyDeviceInfo

    [Android Library] Get device information in a super easy way

    Android library to get device information in a super easy way. The library is built for simplicity and approachability. It not only eliminates most boilerplate code for dealing with device information but also provides an easy and simple API to retrieve them. EasyDeviceInfo is split into multiple module-libraries, v2.2.0 onwards. Use the appropriate one as per your requirement.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 20
    GraphHopper Routing Engine

    GraphHopper Routing Engine

    Open source routing engine for OpenStreetMap

    GraphHopper invests in an active open source community. Our flagships are the GraphHopper routing engine and jsprit, the toolkit for solving rich vehicle routing problems. We promote a fair & diverse mindset. jsprit is a Java based toolkit for solving rich traveling salesman problems (TSP) and vehicle routing problems (VRP). It is lightweight, flexible, easy-to-use, and based on a single all-purpose meta-heuristic. The GraphHopper routing engine is fast and memory-efficient, using Java. It runs server side, offline on Android and iOS. It uses OpenStreetMap data, but can import other data sources as well. GraphHopper is a fast and memory-efficient routing engine released under Apache License 2.0. It can be used as a Java library or standalone web server to calculate the distance, time, turn-by-turn instructions and many road attributes for a route between two or more points. Beyond this "A-to-B" routing it supports "snap to road", Isochrone calculation, mobile navigation and more.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 21
    Micrometer

    Micrometer

    App observability facade for the most popular observability tools

    Micrometer provides a simple facade over the instrumentation clients for the most popular observability systems, allowing you to instrument your JVM-based application code without vendor lock-in. Think SLF4J, but for observability. Micrometer provides vendor-neutral interfaces for timers, gauges, counters, distribution summaries, and long task timers with a dimensional data model that, when paired with a dimensional monitoring system, allows for efficient access to a particular named metric with the ability to drill down across its dimensions. Out-of-the-box instrumentation of caches, the class loader, garbage collection, processor utilization, thread pools, and more tailored to actionable insight. Micrometer is the instrumentation library powering the delivery of application observability from Spring Boot applications.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 22
    OpenGL Canvas

    OpenGL Canvas

    An Android library that provides views using openGL canvas

    android-openGL-canvas is a lightweight OpenGL rendering library for Android that emulates the Android Canvas API using OpenGL ES 2.0. It’s designed for developers who want to achieve hardware-accelerated 2D graphics on Android while maintaining the familiar Canvas drawing commands. Ideal for real-time graphics, games, or custom views, this project provides a fast and flexible alternative to Android’s software rendering without the need for a full game engine. It bridges the gap between low-level graphics APIs and high-level UI rendering.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 23
    OpenGrok

    OpenGrok

    Fast and usable source code search and cross reference engine

    OpenGrok is a fast and usable source code search and cross reference engine. It helps you search, cross-reference and navigate your source tree. It understands various program file formats and history from many Source Code Management systems. In other words it lets you grok (profoundly understand) source code and is developed in the open, hence the name OpenGrok. It is written in Java.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 24
    Pinot

    Pinot

    Apache Pinot - A realtime distributed OLAP datastore

    Realtime distributed OLAP datastore, designed to answer OLAP queries with low latency. Pinot is designed to answer OLAP queries with low latency on immutable data and mutable data(Upsert Support) Pluggable indexing technologies - Sorted Index, Bitmap Index, Inverted Index, StarTree Index, Bloom Filter, Range Index, Text Search Index(Lucence/FST), Json Index, Geospatial Index. Near Realtime ingestion with Apache Kafka, Apache Pulsar, Kinesissupports JSON, Avro, ProtoBuf, Thrift formats. Apache Pinot supports dimension lookup joins currently. Full SQL join support in Apache Pinot is coming soon. In the interim, full SQL joins can be performed by querying Pinot via the Trino or PrestoDB connector. Apache Pinot provides SQL interface for querying interactively, as well as programmatically via rest-api.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 25
    Prometheus JVM Client

    Prometheus JVM Client

    Prometheus instrumentation library for JVM applications

    It supports Java, Clojure, Scala, JRuby, and anything else that runs on the JVM. If you use Maven, you can simply reference the assets below. The latest version can be found on in the maven repository for io.prometheus. By default, counters, histograms, and summaries export an additional series suffixed with _created and a value of the unix timestamp for when the metric was created. Building the repository needs Java 11 (The project the project still supports Java 6 and Java versions > 11 dropped support for Java 6 output). We recommend to use an up-to-data Java 8 installation. The project provides the maven wrapper and therefore no local maven installation is needed. To build the repository just call ./mvnw verify.
    Downloads: 5 This Week
    Last Update:
    See Project
MongoDB Logo MongoDB