# List of Java frameworks

Below is a list of notable Java programming language technologies (frameworks, libraries).
| Name | Details |
| Apache Nutch | Nutch is a well matured, production ready Web crawler. |
| AppFuse | open-source Java EE web application framework. |
| Drools | Business rule management system (BRMS) with a forward and backward chaining inference based rules engine, using an enhanced implementation of the Rete algorithm. |
| jBPM | Flexible Business Process Management (BPM) Suite |
| Activiti | Workflow engine written in Java that can execute business processes described in BPMN 2.0. |
| Akka | Toolkit and runtime simplifying the construction of concurrent and distributed applications on the JVM. |
| Apache Accumulo | Distributed key/value store that provides robust, scalable data storage and retrieval. |
| Apache ActiveMQ | Messaging and Integration Patterns server. |
| Apache Avro | Remote procedure call and data serialization framework developed within Apache's Hadoop project. |
| Apache Axis | Implementation of the SOAP (Simple Object Access Protocol) submission to W3C |
| Apache Camel | Rule-based routing and mediation engine that provides a Java object-based implementation of the Enterprise Integration Patterns using an API to configure routing and mediation rules. |
| Apache Click | Component oriented web application framework for the Java language and is built on top of the Java Servlet API |
| Apache Cocoon | Web application framework built around the concepts of pipeline, separation of concerns and component-based web development. |
| Apache Commons | Collection of open source reusable Java components from the Apache/Jakarta community |
| Apache CXF | Services framework. CXF helps to build and develop services using frontend programming APIs, like JAX-WS and JAX-RS. |
| Apache Empire DB | Relational database abstraction layer and data persistence component that allows developers to take a much more SQL-centric approach in application development than traditional Object-relational mapping frameworks. |
| Apache Felix | Apache Felix is a community effort to implement the OSGi Framework and Service platform and other interesting OSGi-related technologies under the Apache license. |
| Apache Flume | Distributed, reliable, and available service for efficiently collecting, aggregating, and moving large amounts of log data. |
| Apache Geronimo | Open source server runtime that integrates the best open source projects to create Java/OSGi server runtimes that meet the needs of enterprise developers and system administrators |
| Apache Giraph | Iterative graph processing system built for high scalability. |
| Apache Hadoop | Framework that allows for the distributed processing of large data sets across clusters of computers using simple programming models. |
| Apache HBase | Non-relational, distributed database modeled after Google's BigTable |
| Apache Hive | Component of Hortonworks Data Platform(HDP). Hive provides a SQL-like interface to data stored in HDP. |
| Apache JackRabbit | Content repository for the Java platform. |
| Apache Jena | Web framework for building Semantic web apps in Java. It provides an API to extract data from and write to RDF graphs |
| Apache Kafka | Stream processing platform |
| Apache Log4j | Java logging framework - Log4j 2 is the enhanced version of the popular Log4j project. |
| Apache Lucene | High-performance, full-featured text search engine library. |
| Apache Mahout | Project of the Apache Software Foundation to produce free implementations of distributed or otherwise scalable machine learning algorithms focused primarily in the areas of collaborative filtering, clustering and classification. |
| Apache Mesos | Apache Mesos abstracts CPU, memory, storage, and other compute resources away from machines (physical or virtual), enabling fault-tolerant and elastic distributed systems to easily be built and run effectively. |
| Apache Mina | Java network application framework. MINA can be used to create scalable, high performance network applications. |
| Apache OODT | Data management system framework |
| Apache Oozie | Server-based workflow scheduling system to manage Hadoop jobs. |
| Apache OpenNLP | Java machine learning toolkit for natural language processing (NLP). |
| Apache PDFBox | Java tool for working with PDF documents. |
| Apache Pig | High-level platform for creating programs that run on Apache Hadoop. |
| Apache Pivot | Platform for building rich web applications in Java or any JVM-compatible language. |
| Apache POI | APIs for manipulating various file formats based upon Microsoft's OLE 2 Compound Document format. |
| Apache Qpid | Messaging system, implements the Advanced Message Queuing Protocol. |
| Apache River (Jini) | Apache River is a project furthering the development and advancement of Jini technology. River is the implementation of Jini service oriented architecture. |
| Apache Samza | Distributed stream processing framework. |
| Apache Shiro | Java security framework that performs authentication, authorization, cryptography, and session management. |
| Apache Sling | Web framework for the Java platform designed to create content-centric applications on top of a JSR-170-compliant (a.k.a. JCR) content repository such as Apache Jackrabbit. |
| Apache Solr | Enterprise search platform |
| Apache Spark | Fast and general engine for big data processing, with built-in modules for streaming, SQL, machine learning and graph processing. |
| Apache Storm | Distributed realtime computation system. |
| Apache Struts | Framework for building Servlet/JSP based web applications based on the MVC design paradigm |
| Apache Tapestry | Component-oriented Java web application framework |
| Apache Tika | Content detection and analysis framework. |
| Apache Tomcat | Tomcat Server, is an open-source Java Servlet Container |
| Apache Uima | Unstructured Information Management Architecture, is an OASIS standard for content analytics. It provides a component software architecture for the development, discovery, composition, and deployment of multi-modal analytics for the analysis of unstructured information and integration with search technologies. |
| Apache Velocity | Java-based template engine that provides a template language to reference objects defined in Java code |
| Apache Wicket | Component-oriented Java web application framework. |
| Apache Xerces | Collection of software libraries for parsing, validating, serializing and manipulating XML. |
| Apache Zookeeper | Centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. |
| Barracuda | MVC web application framework for developing Java EE web applications. |
| Birt | Reporting and business intelligence tool for rich client and web applications |
| BioJava | Java framework for processing biological data. |
| BlueCove | Java library for Bluetooth (JSR-82 implementation) |
| Bouncy Castle Cryptographic | Collection of APIs used in cryptography. It includes APIs for both the Java and the C# programming languages. |
| Burningwave Core | Java library to build frameworks. |
| Cascading | Abstraction layer for Apache Hadoop and Apache Flink. Cascading is used to create and execute complex data processing workflows on a Hadoop cluster using any JVM-based language. |
| CodeName One | Set of software development tools aiming to provide ›Write Once, Run Anywhere‹ code for various desktop and mobile operating systems (like Windows, macOS, Android, Blackberry, iOS and others). |
| Deeplearning4j | Open-Source Deep-Learning Software for Java and Scala on Hadoop and Spark. |
| Direct Web Remoting | library that enables Java on the server and JavaScript in a browser to interact and call each other as simply as possible. |
| EclipseLink | Java persistence solution addressing relational, XML, and database web services. |
| EHCache | Ehcache is an open source, standards-based cache that boosts performance, offloads your database, and simplifies scalability. |
| Ejml (Efficient Java Matrix Library) | Java linear algebra library for manipulating dense matrices. |
| Elasticsearch | Multitenant-capable full-text search engine with an HTTP web interface and schema-free JSON documents. |
| FreeMarker Template | Java-based Template Engine, originally focusing on dynamic web page generation with MVC software architecture |
| GeoApi | Set of Java language programming interfaces for geospatial applications. |
| GeoTools | Java library that provides tools for geospatial data. |
| GlassFish | Application server and official reference implementation for Servlets 3.0. |
| Google Gson | Library to serialize and deserialize Java objects to (and from) JSON. |
| Google Guava | Set of common libraries, it facilitates best coding practices and helps reduce coding errors. It provides utility methods for collections, caching, primitives support, concurrency, common annotations, string processing, I/O, and validations. |
| Google Guice | Lightweight dependency injection framework for Java 6 and above |
| Google Web Toolkit (GWT) | Set of tools that allows web developers to create and maintain complex JavaScript front-end applications in Java. |
| Hibernate | Object-relational mapping tool for the Java programming language. It provides a framework for mapping an object-oriented domain model to a relational database. |
| HSQLDB | RDBMS with JDBC interface, client-server version, query tool, grid, tree, performance test class, servlet, and self-test program. |
| iBatis | Persistence framework which automates the mapping between SQL databases and objects in Java, .NET, and Ruby on Rails. |
| Infinispan | Distributed in-memory key/value data store with optional schema |
| IText | Dynamic PDF generation and manipulation for web- and other applications (Java, C#). |
| Jackson | High-performance JSON processor for Java. |
| Java Astrodynamics Toolkit | Libraries of components to assist software makers create their own applications to solve problems in Astrodynamics, mission design, spacecraft navigation, guidance and control |
| Java Collections Framework | The Java Collections Framework (JCF) is a set of classes and interfaces that implement commonly reusable collection data structures. |
| Java Media Framework | The Java Media Framework (JMF) is a Java library that enables audio, video and other time-based media to be added to Java applications and applets. |
| Java Topology suite | Java Topology Suite (JTS) is an open-source Java software library that provides an object model for Euclidean planar linear geometry together with a set of fundamental geometric functions. |
| JaxP | Java XML Application programming interfaces (API)s, provides the capability of validating and parsing XML documents. |
| JBoss Seam | Web application framework developed by JBoss |
| JDom | Java-based document object model for XML |
| Jersey | Jersey RESTful Web Services framework, implementation of JAX-RS |
| Jetty | Java HTTP (Web) server and Java Servlet container. |
| JFreeChart | Java chart library |
| JHipster | JHipster is a development platform to generate, develop and deploy Spring Boot + Angular Web applications and Spring microservices. |
| JMonkeyEngine | Game engine made especially for modern 3D development, as it uses shader technology extensively. |
| JProfiler | Java profiling tool for performance Tuning |
| JRockit | Java profiling tool for performance Tuning |
| JSF | Java specification for building component-based user interfaces for web applications. |
| JSoup | Java HTML parser library. Supports extracting and manipulating data using DOM, CSS, and JQuery methods. |
| JUnit | Unit testing framework |
| Keycloak | Single sign-on and identity and access management framework. |
| LiquiBase | Liquibase is an open source database-independent library for tracking, managing and applying database schema changes. |
| LWJGL | Java library that enables cross-platform access to popular native APIs such as OpenGL, OpenAL, and OpenCL. |
| Micronaut | A modern, JVM-based, full-stack framework for building modular, easily testable microservice and serverless applications |
| Mockito | Unit testing framework for Java, framework allows the creation of test double objects (mock objects) in automated unit tests for the purpose of Test-driven Development (TDD) or Behavior Driven Development (BDD). |
| MyBatis | First class persistence framework with support for custom SQL, stored procedures and advanced mappings. |
| Netty | Netty is a non-blocking I/O (NIO) client-server framework for the development of Java network applications such as protocol servers and clients. |
| Neuroph | Java neural network framework which supports common neural network architectures and learning rules. |
| OpenCV | Library of programming functions mainly aimed at real-time computer vision. |
| Oracle WebLogic | Java EE application server |
| OrientDB | NoSQL database management system written in Java. It is a multi-model database, supporting graph, document, key/value, and object models but the relationships are managed as in graph databases with direct connections between records. |
| ORMLite | Object Relational Mapping Lite (ORM Lite) provides some functionality for persisting Java objects to SQL databases while avoiding the complexity and overhead of more standard ORM packages. |
| Play | Play Framework is used to build web applications with Java & Scala. |
| PrimeFaces | User interface (UI) component library for JavaServer Faces (JSF) based applications. |
| Quarkus | SUPERSONIC / SUBATOMIC / JAVA |
| Quartz | Job scheduling library that can be integrated into a wide variety of Java applications. |
| Sax | Event-driven online algorithm for parsing XML documents, with an API developed by the XML-DEV mailing list. |
| Selenium | Library that provides automated control for web-browser, widely used in web applications testing |
| SLF4J | Simple Logging Facade for Java (SLF4J) serves as a simple facade or abstraction for various logging frameworks. |
| SonarQube | Platform for continuous inspection of code quality. |
| Jasper Reports | Java reporting tool that can write to a variety of targets, such as: screen, a printer, into PDF, HTML, Microsoft Excel, RTF, ODT, Comma-separated values or XML files. |
| Spock | Testing and specification framework for Java and Groovy applications. |
| Spring Integration | Framework for enterprise application integration. |
| Spring Roo | Spring Roo is an open source software tool that uses convention-over-configuration principles to provide rapid application development of Java-based enterprise software |
| Spring Security | Authentication and access-control framework |
| TestNG | JUnit-inspired test framework with extra functionality. |
| Thymeleaf | Java XML/XHTML/HTML5 template engine that can work both in web (Servlet-based) and non-web environments |
| Vaadin | Web framework for rich Internet applications. In contrast to JavaScript libraries and browser-plugin based solutions |
| Vertx | Polyglot event-driven application framework that runs on the Java Virtual Machine. |
| Wildfly | Application server framework that implements the Jakarta EE (formerly Java EE) specification. |
| ZKoss | Ajax Web application framework, written in Java |
| Flying Saucer | Java library for rendering XML, XHTML, and CSS 2.1 content |