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 |