It's fork of awesome link with new structure and a lot of new links
-
II. Databases, search engines, big data and machine learning
-
- 1. Servers (Web Server and Application Server))
- 2. Networking
- 3. Message, message broker and message queue
- 4. Http and ssh
- 5. Rest Frameworks
- 6. Integration frameworks
- 7. Web Crawling and HTML parsering
- 8. Json
- 9. CSV
- 10. Integratin with API
- 11. Bitcoin
- 12. Clouds
- 13. Cluster Management
- 14. Document Processing (XLS, DOC and PDF)
- 15. Native
-
VI. Program languages and applications, that was written with Java
- Spring framework The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications -- on any kind of deployment platform. A key element of Spring is infrastructural support at the application level: Spring focuses on the "plumbing" of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments. License: Apache 2 , github's star - 5921, на stackoverflow - more 100 000 questions.

- Google Guava The Guava project contains several of Google's core libraries that we rely on in our Java-based projects: collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and so forth.Requires JDK 1.6 or higher (as of 12.0). License: Apache 2 , github's star - 3813.

- Apache Commons - Apache Commons is an Apache project focused on all aspects of reusable Java components.Commons Proper is dedicated to one principal goal: creating and maintaining reusable Java components. License: Apache 2

- Spring Boot — Spring Boot makes it easy to create Spring-powered, production-grade applications and services with absolute minimum fuss. It takes an opinionated view of the Spring platform so that new and existing users can quickly get to the bits they need. License: Apache 2 , github's star - 2386.

- Lombok Very spicy additions to the Java programming language. Project Lombok makes java a spicier language by adding 'handlers' that know how to build and compile simple, boilerplate-free, not-quite-java code. License: MIT , github's star - 1540.

- Puniverse Quasar Fibers, Channels and Actors for the JVM. License: Eclipse Public v1.0/GNU Lesser 3, github's star - 1091.

- Cucumber jvm Cucumber-JVM is a pure Java implementation of Cucumber that supports the most popular programming languages for the JVM. License: MIT , github's star - 1047.

- Rootbeer GPU CompilerThe Rootbeer GPU Compiler lets you use GPUs from within Java. License: MIT , github's star - 972.

- Oblac Jodd Jodd is set of open-source Java micro frameworks and tools; floppy size! Jodd = tools + ioc + mvc + db + aop + tx + json + html < 1.5 Mb. License: BSD 2, github's star - 912.

- Google Jimfs An in-memory file system for Java 7+. License: Apache 2 , github's star - 752.

- Spring batch Spring Batch is a framework for writing offline and batch applications using Spring and Java. License: Apache 2 , github's star - 448.

- Greenrobot common General purpose utilities and hash functions for Android and Java (aka java-common). License: Apache 2 , github's star - 419.

- Kilim Lightweight threads for Java, with message passing, nio, http and scheduling support. License: MIT , github's star - 517.

- Play Framework The Play Framework combines productivity and performance making it easy to build scalable web applications with Java and Scala. https://www.playframework.com/ . License: Apache 2 , github's star - 6771.

- Spark Spark - a Sinatra inspired web framework. License: Apache 2 , github's star - 2596.

- Atmosphere - Realtime Client Server Framework for the JVM, supporting WebSockets with Cross-Browser Fallbacks. License: CDDL1 / Apache 2 , github's star - 2235.

- Tobie ua-parser A multi-language port of Browserscope's user agent parser. License: Apache 2/MIT/Perl, github's star - 1497.

- Grails - Grails is a framework used to build web applications with the Groovy programming language. The core framework is very extensible and there are numerous plugins available that provide easy integration of add-on features. https://grails.org/ License: Apache 2 , github's star - 1386.

- Ghost Driver Ghost Driver is an implementation of the Remote WebDriver Wire protocol, using PhantomJS as back-end. License: BSD 2, github's star - 1179.

- Ninja Ninja is a full stack web framework for Java. Rock solid, fast and super productive. .http://www.ninjaframework.org. License: Apache 2 , github's star - 894.

- Electronicarts Orbit — Orbit - Virtual actor framework for building distributed systems. License: BSD 3, github's star - 741.

- Mustache.java - Implementation of mustache.js (web application templating system) for Java. License: Apache 2 , github's star - 733.

- Ratpack Ratpack is a simple, capable, toolkit for creating high performance web applications. Ratpack is built on Java and the Netty event-driven networking engine. The API is optimized for Groovy and Java 8.. http://ratpack.io/ License: Apache 2 , github's star - 662.

- B3log Solo - A blogging system written in Java, feel free to create your or your team own blog. License: Apache 2 , github's star - 519.

- Baasbox BaasBox is an Open Source project that aims to provide a backend for mobile and web apps. License: ?, github's star - 499.
- Kolorobot Spring MVC 4 Quickstart Maven Archetype — The project is a Maven archetype for Spring MVC 4 web application. License: ?, github's star - 480.
- Gargl - Record web requests as they happen and turn them into reusable code in any programming language. Gargl - Generic API Recorder and Generator Lite. Pronounced "Gargle." Automate any website. Record web requests as they happen and turn them into reusable code in any programming language. License: MIT , github's star - 462.

- Handlebars.java Logic-less and semantic Mustache templates with Java. License: Apache 2 , github's star - 451.

- Liferay plugins - The liferay-plugins repository is part of the Liferay Portal project. Liferay Portal is an open source enterprise web platform for building business solutions that deliver immediate results and long-term value. License: GNU Lesser 2.1, github's star - 444.

- Netflix Ribbon Ribbon is a Inter Process Communication (remote procedure calls) library with built in software load balancers. The primary usage model involves REST calls with various serialization scheme support. License: Apache 2 , github's star - 410.

- Gwt bootstrap A GWT Library that provides the widgets of Bootstrap, from Twitter. License: Apache 2 , github's star - 409.

- Netflix Zuul Zuul is an edge service that provides dynamic routing, monitoring, resiliency, security, and more. License: Apache 2 , github's star - 407.

- Vaadin — Vaadin is a Java framework for building modern web applications that look great, perform well and make you and your users happy.https://vaadin.com/ License: Apache 2 , github's star - 398.

- ZK framework ZK is a highly productive Java framework for building amazing enterprise web and mobile applications. License: GNU Lesser, github's star - 161.

- Apache Tapestry - A component-oriented framework for creating highly scalable web applications in Java. License: Apache 2.

- Apache Wicket - К Open Source Java web framework that powers thousands of web applications and web sites for governments, stores, universities, cities, banks, email providers, and more. License: Apache 2.

- Google Web Toolkit - GWT is used by many products at Google, including Google AdWords and Google Wallet. It's open source, completely free, and used by thousands of enthusiastic developers around the world. License: Apache 2.

- Pippo - It's an open source micro web framework in Java, with minimal dependencies and a quick learning curve.The goal of this project is to create a micro web framework in Java that should be easy to use and hack.
Pippo can be used in small and medium applications and also in applications based on micro services architecture. License: Apache 2.

- PrimeFaces - PrimeUI is a pure CSS-JS library designed to work with any server side and client side technology featuring 50+ jQuery Widgets, Web Components, Premium Layouts-Themes and more. PrimeUI is an offspring project of the mighty PrimeFaces. License: Apache 2.

- Spring Boot - Spring Boot makes it easy to create Spring-powered, production-grade applications and services with absolute minimum fuss. It takes an opinionated view of the Spring platform so that new and existing users can quickly get to the bits they need. License: Apache 2.

- Spring MVC - Spring MVC web application and RESTful web service framework. License: Apache 2.

- CSSEmbed A tool for embedding data URIs in CSS files. License: MIT , github's star - 407.

- Athou commafeed Google Reader inspired self-hosted RSS reader. License: Apache 2 , github's star - 1226.

- JavaServer Faces - JavaServer™ Faces technology simplifies building user interfaces for JavaServer applications. License: GNU 2 или CDDL 1.0

- JavaServer Pages - This project provides a container independent implementation of JSP 2.1. License: GNU 2 или CDDL 1.0

- Apache Velocity - Velocity is a project of the Apache Software Foundation, charged with the creation and maintenance of open-source software related to the Apache Velocity Engine (templating engine). License: Apache 2.

- Apache FreeMarker - Apache FreeMarker is a template engine: a Java library to generate text output (HTML web pages, e-mails, configuration files, source code, etc.) based on templates and changing data. License: Apache 2.

- Handlebars.java - Logic-less and semantic templates with Java. License: Apache 2.

- Thymeleaf - It is a template engine capable of processing and generating HTML, XML, JavaScript, CSS and text, and can work both in web and non-web environments. It is better suited for serving the view layer of web applications, but it can process files in many formats, even in offline environments. License: Apache 2.

- JavaFX - JavaFX is the next step in the evolution of Java as a rich client platform. It is designed to provide a lightweight, hardware-accelerated Java UI platform for enterprise business applications. License: Oracle, proprietary.

- Scene Builder - JavaFX Scene Builder is a visual layout tool that lets users quickly design JavaFX application user interfaces, without coding. Users can drag and drop UI components to a work area, modify their properties, apply style sheets, and the FXML code for the layout that they are creating is automatically generated in the background. The result is an FXML file that can then be combined with a Java project by binding the UI to the application’s logic. License: Oracle, proprietary.

- SWT -SWT is an open source widget toolkit for Java designed to provide efficient, portable access to the user-interface facilities of the operating systems on which it is implemented. License: Eclipse Public License v1.0.

- Lanterna - Lanterna is a Java library allowing you to write easy semi-graphical user interfaces in a text-only environment, very similar to the C library curses but with more functionality. License: LGPL 2.1.

- Gephi - Gephi is an award-winning open-source platform for visualizing and manipulating large graphs. It runs on Windows, Mac OS X and Linux. Localization is available in French, Spanish, Japanese, Russian, Brazilian Portuguese, Chinese and Czech. License: GNU 3 или CDDL 1.0

- Codecademy EventHub — An open source event analytics platform. License: MIT , github's star - 1043.

- Killbill - Open-Source Subscription Billing & Payment Platform . License: Apache 2 , github's star - 902.

- Activiti Activiti is a light-weight workflow and Business Process Management (BPM) Platform targeted at business people, developers and system admins. Its core is a super-fast and rock-solid BPMN 2 process engine for Java. License: Apache 2 , github's star - 861.

- Liferay Portal Liferay Portal is an open source enterprise web platform for building business solutions that deliver immediate results and long-term value. Liferay Portal started out as a personal development project in 2000 and was open sourced in 2001. License: GNU Lesser 2.1, github's star - 739.

- Broadleaf Commerce - Broadleaf Commerce - Enterprise eCommerce framework based on Spring. License: Apache 2 , github's star - 518.

- Droolsjbpm Drools Drools Expert is the rule engine and Drools Fusion does complex event processing (CEP). License: Apache 2 , github's star - 421.

- Spring Roo — Spring Roo is a next-generation rapid application development tool for Java developers. It focuses on higher productivity, stock-standard Java APIs, high usability, avoiding engineering trade-offs and facilitating easy Roo removal. License: Apache 2 , github's star - 399.

- libgdx Desktop/Android/HTML5/iOS Java game development framework. License: Apache 2 , github's star - 6579.

- Disunity An experimental toolset for Unity asset and asset bundle files. License: unlicense.org, github's star - 828.

- LibGDX/LWJGL LibGDX/LWJGL tutorials and examples. License: ?, github's star - 656.
- jMonkeyEngine A complete 3D game development suite written purely in Java.. http://jmonkeyengine.org License: BSD 3, github's star - 624.

- Jetserver Jetserver is a high speed nio socket based multiplayer java game server written using Netty and Mike Rettig's Jetlang.It is specifically tuned for network based multiplayer games and supports TCP and UDP network protocols. License: MIT , github's star - 484.

- LWJGL 2.X LWJGL 2.X - The Lightweight Java Game Library. http://www.lwjgl.org/ License: BSD 3, github's star - 394.

- Google Guava The Guava project contains several of Google's core libraries that we rely on in our Java-based projects: collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and so forth.Requires JDK 1.6 or higher (as of 12.0). License: Apache 2 , github's star - 3813.

- Apache Commons Collections - Commons-Collections seek to build upon the JDK classes by providing new interfaces, implementations and utilities. License: Apache 2

- Gs collections A supplement or replacement for the Java Collections Framework. License: Apache 2 , github's star - 1201.

- Eclipse Collections Eclipse Collections is a collections framework for Java. It has JDK-compatible List, Set and Map implementations with a rich API, additional types not found in the JDK like Bags, Multimaps and set of utility classes that work with any JDK compatible Collections, Arrays, Maps or Strings. The iteration protocol was inspired by the Smalltalk collection framework.Eclipse Collections started off as an open source project on GitHub called GS Collections. GS Collections has been presented at the JVM Language Summit in 2012 and JavaOne in 2014. License: Лицензия: Eclipse Public 1.0. , github's star - 1201.

- javatuples - javatuples is one of the simplest java libraries ever made. Its aim is to provide a set of java classes that allow you to work with tuples.A tuple is just a sequence of objects that do not necessarily relate to each other in any way. For example: [23, "Saturn", java.sql.Connection@li734s] can be considered a tuple of three elements (a triplet) containing an Integer, a String, and a JDBC Connection object. License: Apache 2

- Immutables - Java annotation processors to generate simple, safe and consistent value objects. Do not repeat yourself, try Immutables, the most comprehensive tool in this field. License: Apache 2

- OpenHFT Chronicle Queue Micro second messaging that stores everything to disk. License: GNU Lesser 3.0, github's star - 440.

- fastutil - fastutil extends the Java™ Collections Framework by providing type-specific maps, sets, lists and queues with a small memory footprint and fast access and insertion; provides also big (64-bit) arrays, sets and lists, and fast, practical I/O classes for binary and text files. It requires Java 7 or newer. License: Apache 2.

- HPPC - HPPC provides template-generated implementations of typical collections, such as lists, sets and maps, for all Java primitive types. The primary driving force behind HPPC is optimization for highest performance and memory efficiency. License: Apache 2.

- Koloboke - Java Collections till the last breadcrumb of memory and performance . This library is a carefully designed and efficient extension of the Java Collections Framework with primitive specializations and more. Java 6+. License: Apache 2.

- Trove - The Trove library provides high speed regular and primitive collections for Java. License: GNU Lesser 2.1.

- Almanac Converter - An easy-to-use Java-based calendar converter - able to convert between various known calendars. License: Apache 2

- Joda-Time - Joda-Time provides a quality replacement for the Java date and time classes. License: Apache 2, github's star - 1442.

- ThreeTenBP - Backport of functionality based on JSR-310 to Java SE 6 and 7. This is NOT an implementation of JSR-310. License: BSD 3

- Time4J - Advanced date, time and interval library for Java. License: GNU Lesser 2.1

- Ocpsoft Prettytime Social Style Date and Time Formatting for Java.PrettyTime is an OpenSource time formatting library. Completely customizable, it creates human readable, relative timestamps like those seen on Digg, Twitter, and Facebook. Get started “right now!” and in over 30 languages! License: Apache 2 , github's star - 394.

- Spring Framework The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications -- on any kind of deployment platform. A key element of Spring is infrastructural support at the application level: Spring focuses on the "plumbing" of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments. License: Apache 2 , github's star - 5921.

- Dagger и Dagger2 A fast dependency injector for Android and Java. License: Apache 2 , github's star - 3607, на stackoverflow - 800 вопросов.

- Google Guice - Guice (pronounced 'juice') is a lightweight dependency injection framework for Java 6 and above, brought to you by Google. License: Apache 2, github's star - 1881.

- Apache DeltaSpike - DeltaSpike consists of a number of portable CDI extensions that provide useful features for Java application developers. We will also ensure true portability! We are testing DeltaSpike on different CDI implementations like Apache OpenWebBeans and JBoss Weld, and also on different Java EE servers like Apache Tomcat and TomEE, JBoss AS7, WildFly 8.x and 9.x, Oracle GlassFish 3.1+ and 4.x+, IBM WebSphere 8.x, Oracle WebLogic Server 12c, Jetty, and others. License: Apache 2

- HK2 - A light-weight and dynamic dependency injection framework. GNU 2/ CDDL 1.0

- Eclipse AspectJ - AspectJ is a seamless aspect-oriented extension to the Java programming language, Java platform compatible, easy to learn and use. License: Eclipse Public 1.0

- jcommander Command line parsing framework for Java. http://jcommander.org/ License: Apache 2 , github's star - 445.

- Jline JLine is a Java library for handling console input. It is similar in functionality to BSD editline and GNU readline. People familiar with the readline/editline capabilities for modern shells (such as bash and tcsh) will find most of the command editing features of JLine to be familiar. License: BSD 4, github's star - 396.

- args4j - Пargs4j is a small Java class library that makes it easy to parse command line options/arguments in your CUI application. License: MIT

- CRaSH - The shell for the Java Platform Open source and open minde. License: GNU Lesser 2.1

Libraries that facilitate functional programming.
- Cyclops react - A comprehensive functional reactive platform for JDK8. Future & functional based programming via JDK compatible extensions for Java 8 and above. License: MIT

- derive4j - Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching, morphisms, (near future: optics and typeclasses). License: GNU 3

- Fugue -Java 8 has standardised some of the basic function interfaces, but does not include quite a few more tools that a functional programmer may expect to be available. This library attempts to fill in some of the gaps when using Java 8. In particular it provides Option and Either types as well as a Pair. There also additional helper classes for common Function, Supplier, and Iterable operations. License: Apache 2.

- Functional Java - Functional Java is an open source library facilitating functional programming in Java. The library implements numerous basic and advanced programming abstractions that assist composition oriented development. Functional Java also serves as a platform for learning functional programming concepts by introducing these concepts using a familiar language. License: BSD 3, github's star - 478.

- Javaslang - Javaslang core is a functional library for Java 8+. It helps to reduce the amount of code and to increase the robustness. A first step towards functional programming is to start thinking in immutable values. Javaslang provides immutable collections and the necessary functions and control structures to operate on these values. License: Apache 2.

- jOOλ - jOOλ - The Missing Parts in Java 8 jOOλ improves the JDK libraries in areas where the Expert Group's focus was elsewhere. It adds tuple support, function support, and a lot of additional functionality around sequential Streams. License: Apache 2.

- Retrolambda Backport of Java 8's lambda expressions to Java 7, 6 and 5. License: Apache 2 , github's star - 1059.

- TotallyLazy Another functional library for Java , License: Apache 2, github's star - 76.

Libraries for developing reactive applications.
- ReactiveX RxJava RxJava – Reactive Extensions for the JVM – a library for composing asynchronous and event-based programs using observable sequences for the Java VM. License: Apache 2 , github's star - 6279, на stackoverflow - 1814 вопросов.

- Eclipse Vert.x Vert.x is a tool-kit for building reactive applications on the JVM . License: Eclipse Public 1 / Apache 2 , github's star - 3743, на stackoverflow - 728 вопросов.

- Reactive Streams - The purpose of Reactive Streams is to provide a standard for asynchronous stream processing with non-blocking backpressure. License: Public Domain (CC0), github's star - 769.

- Reactor - Reactor is a second-generation Reactive library for building non-blocking applications on the JVM based on the Reactive Streams Specification. License: Apache 2.

Libraries that handle security, authentication, authorization or session management. Up
- Scribe Java - Simple OAuth library for Java. License: MIT , github's star - 2731.

- Spring security oauth - Support for adding OAuth1(a) and OAuth2 features (consumer and provider) for Spring web applications. License: Apache 2 , github's star - 916.

- Jasig CAS (Central Authentication Service) - Apereo CAS - Single Sign On for the Web.The Central Authentication Service (CAS) is the standard mechanism by which web applications should authenticate users. License: Apache 2 , github's star - 740.

- Spring security — Spring Security provides security services for the Spring IO Platform. Spring Security 3.1 requires Spring 3.0.3 as a minimum and also requires Java 5. License: Apache 2 , github's star - 732.

- Play Authenticate - An authentication plugin for Play Framework 2.x (Java). License: Apache 2 , github's star - 646.

- Apache Shiro - Apache Shiro is a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management. With Shiro’s easy-to-understand API, you can quickly and easily secure any application – from the smallest mobile applications to the largest web and enterprise applications. License: Apache 2.

- Bouncy Castle - Legion of the Bouncy Castle Java cryptography APIs.A lightweight cryptography API. License: MIT.

- Cryptomator - Free client-side encryption for your cloud files.
Open source software: No backdoors, no registration. License: MIT.

- Google Keyczar - Easy-to-use crypto toolkit. License: Apache 2.

- Keycloak - Integrated SSO and IDM for browser apps and RESTful web services. Built on top of the OAuth 2.0, Open ID Connect, JSON Web Token (JWT) and SAML 2.0 specifications. Keycloak has tight integration with a variety of platforms and has a HTTP security proxy service where we don't have tight integration. Options are to deploy it with an existing app server, as a black-box appliance, or as an Openshift cloud service and/or cartridge. License: Apache 2.

- PicketLink - Simplified Security and Identity management for Java Applications
PicketLink is an umbrella project for security and identity management for Java Applications. It is licensed under a friendly Apache v2 license. License: Apache 2.

Everything about high performance computation, from collections to specific libraries. Up
- Agrona - High Performance data structures and utility methods for Java and C++, License: Apache 2.

- Disruptor - Inter-thread messaging library. License: Apache 2.

- fastutil - fastutil extends the Java Collections Framework by providing type-specific maps, sets, lists and queues with a small memory footprint and fast access and insertion; provides also big (64-bit) arrays, sets and lists, and fast, practical I/O classes for binary and text files. License: Apache 2.

- Eclipse Collections (older GS Collections) - Eclipse Collections is a collections framework for Java. It has JDK-compatible List, Set and Map implementations with a rich API and set of utility classes that work with any JDK compatible Collections, Arrays, Maps or Strings. The iteration protocol was inspired by the Smalltalk collection framework. The library modules in GS Collections are compatible with Java 5. License: Apache 2.

- HPPC -HPPC provides template-generated implementations of typical collections, such as lists, sets and maps, for all Java primitive types. The primary driving force behind HPPC is optimization for highest performance and memory efficiency. License: Apache 2.

- Javolution - ibrary for real-time and embedded systems. License: BSD 2.

- JCTools - Concurrency tools currently missing from the JDK. License: Apache 2.

- Koloboke - Hash sets and hash maps. License: Apache 2.

- Trove - Primitive collections. License: GNU Lesser 2.1.

Libraries that handle serialization with high efficiency. Up
- Square Okio A modern I/O API for Java. License: Apache 2 , github's star - 1243.

- Square type A lightning fast, transactional, file-based FIFO for Android and Java. License: Apache 2 , github's star - 1073.

- Simple Binary Encoding (SBE) Simple Binary Encoding (SBE) - High Performance Message Codec. License: Apache 2 , github's star - 612.

- MessagePack - MessagePack serializer implementation for Java. License: Apache 2 , github's star - 448.

- FlatBuffers - Memory efficient serialization library that can access serialized data without unpacking and parsing it. License: Apache 2.

- FST - JDK compatible high performance object graph serialization. License: Apache 2.

- Kryo - Fast and efficient object graph serialization framework. License: BSD 3.

- MessagePack - Efficient binary serialization format. License: Apache 2.

Libraries that log the behavior of an application. Up
- Graylog2 server Free and open source log management. License: GNU 3, github's star - 1308.

- logback The reliable, generic, fast and flexible logging framework for Java.. http://logback.qos.ch/. License: Eclipse Public 1.0/GNU Lesser 2.1, github's star - 497.

- slf4j Abstraction layer which is to be used with an implementation. http://www.slf4j.org/ License: MIT , github's star - 384.

- Apache Log4j 2 - Apache Log4j 2 is an upgrade to Log4j that provides significant improvements over its predecessor. License: Apache 2.

- graylog - Open-source aggregator suited for extended role and permission management. License: GNU 3.

- Elastic Kibana - Analyzes and visualizes log files. Some features require payment. License: Apache 2.

- Elastic Logstash - Tool for managing log files. License: Apache 2.

- Metrics - Expose metrics via JMX or HTTP and can send them to a database. License: Apache 2.

- tinylog - Lightweight logging framework with static logger class. License: Apache 2.

Frameworks that ease bean mapping. Up
- Dozer - Dozer is a Java Bean to Java Bean mapper that recursively copies data from one object to another. License: Apache 2, github's star - 421.

- MapStruct - An annotation processor for generating type-safe bean mappers. License: Apache 2.

- ModelMapper -Simple, Intelligent, Object Mapping. License: Apache 2.

- Orika - Simpler, better and faster Java bean mapping framework. License: Apache 2.

- Selma - Stupid Simple Statically Linked Mapper. Selma Java bean mapping that compiles. License: Apache 2.

Libraries that assist with the creation, evaluation or manipulation of graphical images or video. Up
- Facebook Rebound A Java library that models spring dynamics and adds real world physics to your app. License: BSD, github's star - 2219.

- Processing Source code for the Processing Development Environment (PDE) . License: GNU 2, github's star - 1896.

- JavaCV JavaCV uses wrappers from the JavaCPP Presets of commonly used libraries by researchers in the field of computer vision (OpenCV, FFmpeg, libdc1394, PGR FlyCapture, OpenKinect, videoInput, ARToolKitPlus, and flandmark), and provides utility classes to make their functionality easier to use on the Java platform, including Android. License: Apache 2 , github's star - 503.

- imgscalr ПSimple Java image-scaling library implementing Chris Campbell's incremental scaling algorithm as well as Java2D's "best-practices" image-scaling techniques. License: Apache 2 , github's star - 451.

- webcam-capture Project goal is to give users possibility to access build-in or connected via USB webcams or remote IP / network cameras directly from Java code. Using provided libraries user is able to read camera images and detect motion. License: MIT , github's star - 437.

- Thumbnailator - Thumbnailator's fluent interface can be used to perform fairly complicated thumbnail processing task in one simple step.
- zxing ZXing ("zebra crossing") is an open-source, multi-format 1D/2D barcode image processing library implemented in Java, with ports to other languages. License: Apache 2 , github's star - 5314.

Libraries to manipulate bytecode programmatically. Up
- Google Auto - A collection of source code generators for Java. License: Apache 2 , github's star - 1442.

- Square Javapoet - JavaPoet is a Java API for generating .java source files. License: Apache 2 , github's star - 1057.

- Byte buddy - Runtime code generation for the Java virtual machine. http://bytebuddy.net/ License: Apache 2 , github's star - 473.

- ASM - ASM is an all purpose Java bytecode manipulation and analysis framework. It can be used to modify existing classes or dynamically generate classes, directly in binary form. Provided common transformations and analysis algorithms allow to easily assemble custom complex transformations and code analysis tools. License: BSD 3 / License: Apache 2.

- Byteman - Byteman is a tool which makes it easy to trace, monitor and test the behaviour of Java application and JDK runtime code. It injects Java code into your application methods or into Java runtime methods without the need for you to recompile, repackage or even redeploy your application. License: LGPL 2.1.

- Javassist -Javassist (Java Programming Assistant) makes Java bytecode manipulation simple. It is a class library for editing bytecodes in Java; it enables Java programs to define a new class at runtime and to modify a class file when the JVM loads it. License: Apache 2 or LGPL or later 2.1 or Mozilla Public License 1.1.

- ADT4J - This library implements Algebraic Data Types for Java. ADT4J provides annotation processor for @GenerateValueClassForVisitor annotation. ADT4J generates new class for each @GenerateValueClassForVisitor annotation. License: BSD 3

- Auto - A collection of source code generators for Java. License: Apache 2

- JHipster - Hipster stack for Java developers. Spring Boot + AngularJS in one handy generator. License: Apache 2

- cglib - cglib - Byte Code Generation Library is high level API to generate and transform Java byte code. It is used by AOP, testing, data access frameworks to generate dynamic proxy objects and intercept field access. License: Apache 2.

Libraries and frameworks for writing distributed and fault-tolerant applications. Up
- Akka - Akka is a toolkit and runtime for building highly concurrent, distributed, and resilient message-driven applications on the JVM. License: Apache 2.

- Apache Storm - Apache Storm is a free and open source distributed realtime computation system. Storm makes it easy to reliably process unbounded streams of data, doing for realtime processing what Hadoop did for batch processing. Storm is simple, can be used with any programming language, and is a lot of fun to use! License: Apache 2.

- Apache ZooKeeper - ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. All of these kinds of services are used in some form or another by distributed applications. License: Apache 2.

- Alibaba Dubbo Dubbo is a distributed service framework empowers applications with service import/export capability with high performance RPC. License: Apache 2 , github's star - 1917.

- Netflix Curator ZooKeeper client wrapper and rich ZooKeeper framework. License: Apache 2 , github's star - 1158.

- Axon Framework - The axon framework is focussed on making life easier for developers that want to create a java application based on the CQRS principles. The framework is used in a lot of environments. License: Apache 2.

- Hazelcast - The Leading Open Source In-Memory Data Grid:
Distributed Computing, Simplified. License: Apache 2.

- Netflix Hystrix - Hystrix is a latency and fault tolerance library designed to isolate points of access to remote systems, services and 3rd party libraries, stop cascading failure and enable resilience in complex distributed systems where failure is inevitable, github's star - 3571. License: Apache 2.

- JGroups - JGroups is a toolkit for reliable messaging. It can be used to create clusters whose nodes can send messages to each other. License: Apache 2.

- Orbit - Orbit is a modern framework for JVM languages that makes it easier to build and maintain distributed and scalable online services. It was developed by BioWare, a division of Electronic Arts. License: BSD 3.

- Quasar - Quasar is an open source JVM library that greatly simplifies the creation of highly concurrent software that is very easy to write and reason about, performant, and fault tolerant. License: Eclipse Public License v1.0 или LGPL 3.0.

- Storm contrib A collection of spouts, bolts, serializers, DSLs, and other goodies to use with Storm. License: Eclipse Public 1.0, github's star - 504.

- JADE - JADE (Java Agent DEvelopment Framework) is a software Framework fully implemented in the Java language. It simplifies the implementation of multi-agent systems through a middle-ware that complies with the FIPA specifications and through a set of graphical tools that support the debugging and deployment phases. License: GNU Lesser 2.0

Libraries for scientific computing and analysis. Up
- DataMelt - DataMelt is a free mathematics software for scientists, engineers and students. It can be used for numeric computation, statistics, symbolic calculations, data analysis and data visualization. License: GNU 3.

- JGraphT - JGraphT is a free Java class library that provides mathematical graph-theory objects and algorithms. It runs on Java 2 Platform (requires JDK 1.7 or later). License: Eclipse Public License или LGPL 2.1

- JScience - Provides a set of classes to work with scientific measurements and units. License: BSD 2.

Everything which simplifies interactions with the database. Up
- Thinkaurelius Titan - Titan is a highly scalable graph database optimized for storing and querying large graphs with billions of vertices and edges distributed across a multi-machine cluster. Titan is a transactional database that can support thousands of concurrent users, complex traversals, and analytic graph queries. License: Apache 2 , github's star - 2846.

- Apache Cassandra - Cassandra is a partitioned row store. Rows are organized into tables with a required primary key. License: Apache 2 , github's star - 2155.

- Orientdb OrientDB is the first Multi-Model DBMS with Document & Graph engine. OrientDB can run distributed (Multi-Master), supports SQL, ACID Transactions, Full-Text indexing, Reactive Queries and has a small memory footprint. OrientDB is licensed with Apache 2 license and the development is driven by OrientDB LTD and a worldwide Open Source community. License: Apache 2/CDDL 1/Eclipse Distribution 1.0, github's star - 1880.

- Neo4j — Neo4j is the world’s leading Graph Database. It is a high performance graph store with all the features expected of a mature and robust database, like a friendly query language and ACID transactions. License: GNU 3/ GNU AGPLv3, github's star - 1787.

- Mapdb MapDB provides concurrent Maps, Sets and Queues backed by disk storage or off-heap-memory. It is a fast and easy to use embedded Java database engine. Это быстрый и простой способ создать embedded Java базу данных. http://www.mapdb.org/. License: Apache 2 , github's star - 1484.

- Voldemort An open source clone of Amazon's Dynamo. Voldemort is a distributed key-value storage system. License: Apache 2 , github's star - 1480.

- Alluxio (formerly Tachyon) Memory-Speed Virtual Distributed Storage System. License: Apache 2 , github's star - 1459.

- Opentsdb A scalable, distributed Time Series Database. License: GNU 3, github's star - 1336.

- Hazelcast Open Source In-Memory Data Grid. License: Apache 2 , github's star - 1167.

- Tinkerpop Blueprints A Property Graph Model Interface. It provides implementations, test suites, and supporting extensions. Graph databases and frameworks that implement the Blueprints interfaces automatically support Blueprints-enabled applications. Likewise, Blueprints-enabled applications can plug-and-play different Blueprints-enabled graph backends. License: BSD 3, github's star - 1083.

- Apache Lucene solr Apache Lucene/Solr. Lucene is a search engine library
Solr is a search engine server that uses lucene. License: Apache 2 , github's star - 1069.

- Java Chronicle Java Indexed Record Chronicle — This library is an ultra low latency, high throughput, persisted, messaging and event driven in memory database. License: Apache 2 , github's star - 970.

- Torodb ToroDB - Open source NoSQL database that runs on top of a RDBMS. Compatible with MongoDB protocol and APIs, but with support for native SQL, atomic operations and reliable and durable backends like PostgreSQL. License: GNU AGPLv3, github's star - 951.

- Crate Crate.IO: The fast, scalable, easy to use SQL database with native full text search. https://crate.io/ .License: Apache 2 , github's star - 925.

- Linkedin Pinot A realtime distributed OLAP datastore. Pinot is a realtime distributed OLAP datastore, which is used at LinkedIn to deliver scalable real time analytics with low latency. License: Apache 2 , github's star - 854.

- Solandra Solandra is a real-time distributed search engine built on Apache Solr and Apache Cassandra. License: Apache 2 , github's star - 808.

- Voltdb VoltDB is a horizontally-scalable, in-memory SQL RDBMS designed for applications that have extremely high read and write throughput requirements. License: GNU AGPLv3, github's star - 586.

- Leveldb This is a rewrite (port) of LevelDB in Java. This goal is to have a feature complete implementation that is within 10% of the performance of the C++ original and produces byte-for-byte exact copies of the C++ code.. License: Apache 2 , github's star - 525.

- Kairosdb KairosDB is a fast distributed scalable time series database written on top of Cassandra. License: Apache 2 , github's star - 485.

- Linkedin Sensei Sensei is a distributed, elastic realtime searchable database. License: Apache 2 , github's star - 464.

- Elephantdb Distributed database specialized in exporting key/value data from Hadoop. License: BSD 3, github's star - 464.

- Apache Drill Apache Drill is a distributed MPP query layer that supports SQL and alternative query languages against NoSQL and Hadoop data storage systems. License: Apache 2 , github's star - 448.

- Tinkerpop Rexster Rexster is a graph server that exposes any Blueprints graph through HTTP/REST and a binary protocol called RexPro. Extensions support standard traversal goals such as search, score, rank, and, in concert, recommendation. License: BSD 3, github's star - 402.

- Tomcat redis session manager Redis-backed non-sticky session store for Apache Tomcat. License: MIT , github's star - 396.

- Embulk Embulk is a parallel bulk data loader that helps data transfer between various storages, databases, NoSQL and cloud services. License: Apache 2 , github's star - 394.

- H2 - Welcome to H2, the Java SQL database. The main features of H2 are: Very fast, open source, JDBC API, Embedded and server modes; in-memory databases, Browser based Console application,Small footprint: around 1.5 MB jar file size License: Mozilla Public License 1.1. и Eclipse Public License v1.0.

Databases in a distributed system that appear to applications as a single data source.
- Apache Cassandra - The Apache Cassandra database is the right choice when you need scalability and high availability without compromising performance. License: Apache 2 , github's star - 2155.

- Apache HBase - Apache HBase is an open-source, distributed, versioned, non-relational database modeled after Google's Bigtable: A Distributed Storage System for Structured Data by Chang et al. License: Apache 2.

- Druid - Druid is a fast column-oriented distributed data store. License: Apache 2, github's star - 1846.

- Infinispan - Infinispan is a distributed in-memory key/value data store with optional schema. It can be used both as an embedded Java library and as a language-independent service accessed remotely over a variety of protocols (HotRod, REST, Memcached and WebSockets). License: Apache 2.

- OpenTSDB - The Scalable Time Series Database Store and serve massive amounts of time series data without losing granularity.License: GNU 3, github's star - 1336.

Efficient and specific data structures.
- Apache Avro - Apache Avro is a data serialization system. License: Apache 2.

- Apache Orc - The smallest, fastest columnar storage for Hadoop workloads. License: Apache 2.

- Apache Parquet - Apache Parquet is a columnar storage format available to any project in the Hadoop ecosystem, regardless of the choice of data processing framework, data model or programming language. License: Apache 2.

- Apache Thrift -The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delphi and other languages. License: Apache 2.

- Persistent Collection - PCollections serves as a persistent and immutable analogue of the Java Collections Framework. License: MIT.

- Protobuf - Protocol Buffers (a.k.a., protobuf) are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data. License: BSD 3.

- SBE - Simple Binary Encoding (SBE) - High Performance Message Codec, License: Apache 2.

- Wire - Clean, lightweight protocol buffers for Android and Java. License: Apache 2.

- Elasticsearch - Elasticsearch is a distributed RESTful search engine built for the cloud. License: Apache 2 , github's star - 11833.

- Linkedin Indextank Engine This project contains IndexTank (http://indextank.com) search engine implementation. Includes features like variables (boosts), categories (facets), faceted search, snippeting, custom scoring functions, suggest, and autocomplete. License: Apache 2 , github's star - 788.

- Apache Solr Solr is the popular, blazing-fast, open source enterprise search platform built on Apache Lucene. License: Apache 2 , github's star - 486.

- Linkedin Cleo A flexible, partial, out-of-order and real-time typeahead search library. License: Apache 2 , github's star - 478.

- Elasticsearch cloud aws AWS (Amazon Web Service) Cloud Plugin for Elasticsearch. License: Apache 2 , github's star - 435.

- Elasticsearch analysis ik The IK Analysis plugin integrates Lucene IK analyzer into elasticsearch, support customized dictionary. License: ?, github's star - 395.
- Facebook Presto Distributed SQL query engine for big data (Cassandra, Hive, Kafka, MySQL, PostgreSQL and so on). License: Apache 2 , github's star - 3603.

- Jedis A blazingly small and sane redis java client. License: MIT , github's star - 2495.

- Tinkerpop Gremlin A Graph Traversal Language. Gremlin is a domain specific language for traversing property graphs. Gremlin makes use of Pipes to perform complex graph traversals. This language has application in the areas of graph query, analysis, and manipulation. License: BSD 3 , github's star - 1370.

- Mongodb Java Driver The Java driver for MongoDB. License: Apache 2 / Creative Commons Attribution , github's star - 1276.

- Yahoo Mysql_perf_analyzer MySQL Performance Analyzer is an open source project for MySQL performance monitoring and analysis. License: Apache 2 , github's star - 1082.

- Airbnb Airpal Web UI for PrestoDB. License: Apache 2 , github's star - 1074.

- Mongodb hadoop MongoDB Connector for Hadoop. License: ?, github's star - 937.
- Elasticsearch jdbc JDBC importer for Elasticsearch. License: Apache 2 , github's star - 867.

- Flyway — Flyway by Boxfuse. Database Migrations Made Easy. http://flywaydb.org/ . License: Apache 2 , github's star - 851.

- Elasticsearch river mongodb - MongoDB River Plugin for ElasticSearch. License: Apache 2 , github's star - 794.

- Netflix Astyanax Cassandra Java Client. License: Apache 2 , github's star - 735.

- Liquibase Liquibase — source control for your database, supports multiple developers, database types and so on. http://www.liquibase.org/ . License: Apache 2 , github's star - 734.

- Mongodb Morphia MongoDB object-document mapper in Java based on. License: Apache 2 , github's star - 725.

- Couchdb lucene Enables full-text searching of CouchDB documents using Lucene. License: Apache 2 , github's star - 639.

- Forcedotcom Phoenix Phoenix is a SQL skin over HBase, delivered as a client-embedded JDBC driver, powering the HBase use cases at Salesforce.com. Phoenix targets low-latency queries (milliseconds), as opposed to batch operation via map/reduce. License: BSD 3 , github's star - 507.

- Variety A schema analyzer for MongoDB. License: MIT , github's star - 505.

- Redisson Redisson - distributed Java objects (Bloom filter, BitSet, Set, SetMultimap, ScoredSortedSet, SortedSet, Map, ConcurrentMap, List, ListMultimap, Queue, BlockingQueue, Deque, BlockingDeque, Semaphore, Lock, ReadWriteLock, AtomicLong, CountDownLatch, Publish / Subscribe, HyperLogLog), Redis pipelining on top of Redis server. License: Apache 2 , github's star - 483.

- Netflix Priam Co-Process for backup/recovery, Token Management, and Centralized Configuration management for Cassandra. License: Apache 2 , github's star - 481.

- Datastax Java driver DataStax Java Driver for Apache Cassandra. License: Apache 2 , github's star - 480.

- Memcached Java Client to be the best java client for memcached. License: BSD 4, github's star - 436.

- Spring data mongodb Provide support to increase developer productivity in Java when using MongoDB. Uses familiar Spring concepts such as a template classes for core API usage and lightweight repository style data access. License: Apache 2 , github's star - 394.

- Apache Phoenix - Apache Phoenix enables OLTP and operational analytics in Hadoop for low latency applications by combining the best of both worlds, License: Apache 2.

- FlexyPool - FlexyPool adds metrics and failover strategies to a given Connection Pool, allowing it to resize on demand. License: Apache 2.

- LightAdmin - Pluggable data administration UI library for Java web applications. License: Apache 2.

APIs which handle the persistence of objects. Up
- HikariCP A solid high-performance JDBC connection pool at last. License: Apache 2 , github's star - 1542.

- Mybatis 3 MyBatis SQL mapper framework for Java. License: Apache 2 , github's star - 1428.

- Hibernate orm Hibernate's core Object/Relational Mapping functionality. http://hibernate.org/orm/ License: GNU Lesser 2.1, github's star - 1275.

- JOOQ OOQ is an innovative solution for a better integration of Java applications with popular databases like Oracle, Microsoft SQL Server, IBM DB2, or SAP Sybase. http://www.jooq.org/ . License: Apache 2 , github's star - 830.

- Querydsl Querydsl is a framework which enables the construction of type-safe SQL-like queries for multiple backends including JPA, MongoDB and SQL in Java. http://www.querydsl.com/ . License: Apache 2 , github's star - 570.

- Kundera A JPA 2.1 compliant Polyglot Object-Datastore Mapping Library for NoSQL Datastores. License: Apache 2 , github's star - 490.

- Spring data jpa Simplifies the development of creating a JPA-based data access layer. License: Apache 2 , github's star - 459.

- Jdbi jDBI is designed to provide convenient tabular data access in Java(tm). It uses the Java collections framework for query results, provides a convenient means of externalizing sql statements, and provides named parameter support for any database being used. http://jdbi.org/ .License: Apache 2 , github's star - 458.

- ActiveJDBC ActiveJDBC is a fast and lean Java ORM. License: Apache 2 , github's star - 230.

- Vibur DBCP - Concurrent, fast, and fully-featured JDBC connection pool, which provides a non-starvation guarantee for application threads, statement caching, slow SQL queries detection and logging, and Hibernate integration, among other features. License: Apache 2.

- Ebean - Ebean ORM for Java/Kotlin.Fast and simple data access on the JVM. License: Apache 2.

- EclipseLink - Comprehensive open-source Java persistence solution addressing relational, XML, and database web services. License: Eclipse Public License v1.0 и BSD 3.

- OrmLite - Object Relational Mapping Lite (ORM Lite) provides some simple, lightweight functionality for persisting Java objects to SQL databases while avoiding the complexity and overhead of more standard ORM packages. License: ISC.

- Storm - Distributed and fault-tolerant realtime computation: stream processing, continuous computation, distributed RPC, and more. License: Apache 2 , github's star - 8636.

- OpenRefine — OpenRefine is a free, open source power tool for working with messy data and improving it. License: BSD , github's star - 2939.

- Addthis Stream lib - Stream summarizer and cardinality estimator. License: Apache 2 , github's star - 1145.

- HdrHistogram (A High Dynamic Range (HDR) Histogram ) — HdrHistogram: A High Dynamic Range (HDR) Histogram: HdrHistogram supports the recording and analyzing of sampled data value counts across a configurable integer value range with configurable value precision within the range. License: BSD 2 , github's star - 672.

- HazyResearch DeepDive DeepDive is a system to extract value from dark data. Like dark matter, dark data is the great mass of data buried in text, tables, figures, and images, which lacks structure and so is essentially unprocessable by existing software. License: Apache 2 , github's star - 531.

- Apache Incubator Zeppelin Zeppelin, a web-based notebook that enables interactive data analytics. You can make beautiful data-driven, interactive and collaborative documents with SQL, Scala and more. License: Apache 2 , github's star - 463.

- Seldon Server Enterprise machine learning platform for prediction and recommendation on Apache Spark. License: Apache 2 , github's star - 453.

- Pulsar - Realtime analytics, this includes the core components of Pulsar pipeline. License: GNU 2.0, github's star - 435.

- Suro: Netflix's Data Pipeline — Suro: Netflix's Data Pipeline. Suro is a data pipeline service for collecting, aggregating, and dispatching large volume of application events including log data. License: Apache 2 , github's star - 405.

- Apache Storm - Storm is a distributed realtime computation system. Similar to how Hadoop provides a set of general primitives for doing batch processing, Storm provides a set of general primitives for doing realtime computation.License: Apache 2 , github's star - 2098.

- Druid Column oriented distributed data store ideal for powering interactive applications. License: Apache 2 , github's star - 1846.

- H2o h2o = fast statistical, machine learning & math runtime for bigdata. License: Apache 2 , github's star - 1725.

- Cloudera Oryx The Oryx open source project provides simple, real-time large-scale machine learning / predictive analytics infrastructure. It implements a few classes of algorithm commonly used in business applications: collaborative filtering / recommendation, classification / regression, and clustering. License: Apache 2 , github's star - 1142.

- Twitter Ambrose A platform for visualization and real-time monitoring of data workflows. License: Apache 2 , github's star - 1024.

- Twitter Elephant bird - Twitter's collection of LZO and Protocol Buffer-related Hadoop, Pig, Hive, and HBase code. License: Apache 2 , github's star - 861.

- Apache Hadoop - The Apache Hadoop software library is a framework that allows for the distributed processing of large data sets across clusters of computers using simple programming models. It is designed to scale up from single servers to thousands of machines, each offering local computation and storage. License: Apache 2 , github's star - 803.

- Google Mr4c MR4C is an implementation framework that allows you to run native code within the Hadoop execution framework. License: GNU Lesser 3, github's star - 702.

- Alibaba Jstorm — JStorm is a distributed and fault-tolerant realtime computation system. Inspired by Apache Storm, JStorm has been completely rewritten in Java and provides many more enhanced features. JStorm has been widely used in many enterprise environments and proved robust and stable. License: Apache 2 , github's star - 654.

- Apache Hive - The Apache Hive data warehouse software facilitates querying and
managing large datasets residing in distributed storage. Built on top
of Apache Hadoop. https://hive.apache.org/ .License: Apache 2 , github's star - 619.

- Etsy Oculus Oculus is the anomaly correlation component of Etsy's Kale system. License: MIT , github's star - 618.

- Linkedin Datafu Apache DataFu is a collection of libraries for working with large-scale data in Hadoop. The project was inspired by the need for stable, well-tested libraries for data mining and statistics. License: Apache 2 , github's star - 570.

- Linkedin Gobblin Universal data ingestion framework for Hadoop. License: Apache 2 , github's star - 547.

- Apache Kylin Apache Kylin is an open source Distributed Analytics Engine to provide SQL interface and multi-dimensional analysis (OLAP) on Hadoop supporting extremely large datasets. License: Apache 2 , github's star - 504.

- Umongo - Desktop app to browse and administer your MongoDB cluster. License: Apache 2 , github's star - 495.

- Apache Flink - Apache Flink is an open source stream processing framework with powerful stream- and batch-processing capabilities. License: Apache 2 , github's star - 475.

- Elasticsearch hadoop - иElasticsearch real-time search and analytics natively integrated with Hadoop. License: Apache 2 , github's star - 457.

- Oryx 2 - Oryx 2: Lambda architecture on Apache Spark, Apache Kafka for real-time large scale machine learning. License: Apache 2 , github's star - 456.

- Yahoo SAMOA (Scalable Advanced Massive Online Analysis) — SAMOA (Scalable Advanced Massive Online Analysis) is an open-source platform for mining big data streams. License: Apache 2 , github's star - 394.

- Facebook Presto Presto is a distributed SQL query engine for big data. License: Apache 2 , github's star - 3603.

Tools that provide specific statistical algorithms which allow learning from data. Up
- Airbnb Aerosolve A machine learning library designed from the ground up to be human friendly. License: Apache 2 , github's star - 1672.

- Smile Smile (Statistical Machine Intelligence and Learning Engine) is a set of pure Java libraries of various state-of-art machine learning algorithms. Smile is self contained and requires only Java standard library. License: Apache 2 , github's star - 1519.

- Deeplearning4j Deeplearning4J is an Apache 2.0-licensed, open-source, distributed neural net library written in Java and Scala. http://deeplearning4j.org/ .License: Apache 2 , github's star - 1172.

- Libsvm Libsvm is a simple, easy-to-use, and efficient software for SVM classification and regression. It solves C-SVM classification, nu-SVM classification, one-class-SVM, epsilon-SVM regression, and nu-SVM regression. License: BSD 3, github's star - 812.

- Neuralnetworks java deep learning algorithms and deep neural networks with gpu acceleration. License: MIT , github's star - 583.

- Datumbox framework Datumbox is an open-source Machine Learning framework written in Java which allows the rapid development of Machine Learning and Statistical applications. License: Apache 2 , github's star - 525.

- Apache Mahout The Apache Mahout project's goal is to build an environment for quickly creating scalable performant machine learning applications. https://mahout.apache.org/ .License: Apache 2 , github's star - 492.

- Encog java core Encog is an advanced machine learning framework that supports a variety of advanced algorithms, as well as support classes to normalize and process data. Machine learning algorithms such as Support Vector Machines, Artificial Neural Networks, Genetic Programming, Bayesian Networks, Hidden Markov Models, Genetic Programming and Genetic Algorithms are supported. License: Apache 2 , github's star - 394.

- Apache Flink - Apache Flink is an open source stream processing framework with powerful stream- and batch-processing capabilities. https://flink.apache.org/ License: Apache 2 , github's star - 475.

- Apache Hadoop - The Apache Hadoop software library is a framework that allows for the distributed processing of large data sets across clusters of computers using simple programming models. It is designed to scale up from single servers to thousands of machines, each offering local computation and storage. http://hadoop.apache.org/ License: Apache 2 , github's star - 803.

- Apache Spark - Apache Spark™ is a fast and general engine for large-scale data processing. License: Apache 2.

- DeepDive - DeepDive is a system to extract value from dark data. Like dark matter, dark data is the great mass of data buried in text, tables, figures, and images, which lacks structure and so is essentially unprocessable by existing software. License: Creative Commons Attribution 4.0.

- H2o h2o = fast statistical, machine learning & math runtime for bigdata. http://h2o.ai/ License: Apache 2 , github's star - 1725.

- JSAT - Java Statistical Analysis Tool, a Java library for Machine Learning. License: GNU 3.

- Weka - Weka is a collection of machine learning algorithms for data mining tasks. The algorithms can either be applied directly to a dataset or called from your own Java code. Weka contains tools for data pre-processing, classification, regression, clustering, association rules, and visualization. It is also well-suited for developing new machine learning schemes. License: GNU.

- Protégé - A free, open-source ontology editor and framework for building intelligent systems. License: BSD 2

Libraries that help on implementing optimization and satisfiability problems.
- Choco - Choco is a Free and Open-Source Software dedicated to Constraint Programming. It aims at describing hard combinatorial problems in the form of Constraint Satisfaction Problems and solving them with Constraint Programming techniques. License: BSD.

- JaCoP - Java Constraint Programming (JaCoP) solver. License: неизвестна
- OptaPlanner - OptaPlanner is a constraint satisfaction solver. It optimizes business resource planning. Every organization faces scheduling puzzles: assign a limited set of constrained resources (employees, assets, time and money) to provide products or services to customers. License: Apache 2.

- Sat4J - Sat4j is a java library for solving boolean satisfaction and optimization problems. It can solve SAT, MAXSAT, Pseudo-Boolean, Minimally Unsatisfiable Subset (MUS) problems. License: GNU Lesser 3 и Eclipse Public 1.0.

Libraries that specialize on processing text. Up
- Stanfordnlp CoreNLP Stanford CoreNLP provides a set of natural language analysis tools written in Java. License: GNU 2, github's star - 871.

- Apache OpenNLP - The Apache OpenNLP library is a machine learning based toolkit for the processing of natural language text. License: Apache 2.

- LingPipe - LingPipe is tool kit for processing text using computational linguistics. License: AGPL и платная License, проприетарная.
ИЛИ 
- Mallet - MALLET is a Java-based package for statistical natural language processing, document classification, clustering, topic modeling, information extraction, and other machine learning applications to text. License: Eclipse Public License v1.0.

Servers which are specifically used to deploy applications.
- Apache Tomcat - Robust all-round server for Servlet and JSP.
- Apache TomEE - Tomcat plus Java EE.
- Jetty - Lightweight, small server, often embedded in projects.
- WebSphere Liberty - Lightweight, modular server developed by IBM.
- WildFly - Formerly known as JBoss and developed by Red Hat with extensive Java EE support.
Libraries for network programming.
- Async Http Client - Asynchronous HTTP and WebSocket client library.
- Comsat - Integrates standard Java web-related APIs with Quasar fibers and actors.
- Grizzly - NIO framework. Used as a network layer in Glassfish.
- Netty - Framework for building high performance network applications.
- OkHttp - HTTP+SPDY client.
- Undertow - Web server providing both blocking and non-blocking API’s based on NIO. Used as a network layer in WildFly.
Tools that help to send messages between clients in order to ensure protocol independency.
- Aeron - Efficient reliable unicast and multicast message transport.
- Apache ActiveMQ - Message broker that implements JMS and converts synchronous to asynchronous communication.
- Apache Camel - Glues together different transport APIs via Enterprise Integration Patterns.
- Apache Kafka - High-throughput distributed messaging system.
- Hermes - Fast and reliable message broker built on top of Kafka.
- JBoss HornetQ - Clear, concise, modular and made to be embedded.
- JeroMQ - Implementation of ZeroMQ.
- Smack - Cross-platform XMPP client library.
Frameworks specifically for creating RESTful services.
- Dropwizard - Opinionated framework for setting up modern web applications with Jetty, Jackson, Jersey and Metrics.
- Feign - HTTP client binder inspired by Retrofit, JAXRS-2.0, and WebSocket.
- Jersey - JAX-RS reference implementation.
- RESTEasy - Fully certified and portable implementation of the JAX-RS specification.
- RestExpress - Thin wrapper on the JBOSS Netty HTTP stack to provide scaling and performance.
- RestX - Framework based on annotation processing and compile-time source generation.
- Retrofit - Type-safe REST client.
- Spark - Sinatra inspired framework.
- Swagger - Swagger is a specification and complete framework implementation for describing, producing, consuming, and visualizing RESTful web services.
Libraries that analyze the content of websites.
- Apache Nutch - Highly extensible, highly scalable web crawler for production environment.
- Crawler4j - Simple and lightweight web crawler.
- JSoup - Scrapes, parses, manipulates and cleans HTML.
Libraries that simplify JSON processing.
- Genson - Powerful and easy to use Java to JSON conversion library.
- Gson - Serializes objects to JSON and vice versa. Good performance with on-the-fly usage.
- Jackson - Similar to GSON but has performance gains if you need to instantiate the library more often.
- LoganSquare - JSON parsing and serializing library based on Jackson's streaming API. Outpeforms GSON & Jackson's library.
Frameworks and libraries that simplify reading/writing CSV data.
- opencsv - Simple CSV parser with a commercial-friendly license.
- Super CSV - Powerful CSV parser with support for Dozer, Joda-Time and Java 8.
- uniVocity-parsers - One of the fastest and most feature-complete CSV. Also comes with parsers for TSV and fixed width records.
Frameworks which can dynamically manage applications inside of a cluster.
- Apache Aurora - Apache Aurora is a Mesos framework for long-running services and cron jobs.
- Singularity - Singularity is a Mesos framework that makes deployment and operations easy. It supports web services, background workers, scheduled jobs, and one-off tasks.
Libraries that assist with processing office document formats.
- Apache POI - Supports OOXML (XLSX, DOCX, PPTX) as well as OLE2 (XLS, DOC or PPT).
- documents4j - API for document format conversion using third-party converters such as MS Word.
- jOpenDocument - Processes the OpenDocument format.
Everything that helps with the creation of PDF files.
- Apache FOP - Creates PDF from XSL-FO.
- Apache PDFBox - Toolbox for creating and manipulating PDF.
- DynamicReports - Simplifies JasperReports.
- flyingsaucer - XML/XHTML and CSS 2.1 renderer.
- iText - Creates PDF files programmatically but requires a license for commercial purposes.
- JasperReports - Complex reporting engine.
For working with platform-specific native libraries.
- JNA - Work with native libraries without writing JNI. Also provides interfaces to common system libraries.
- JNR - Work with native libraries without writing JNI. Also provides interfaces to common system libraries. Same goals as JNA, but faster, and serves as the basis for the upcoming Project Panama.
Tools that test from model to the view.
- Apache JMeter - Functional testing and performance measurements.
- Arquillian - Integration and functional testing platform for Java EE containers.
- AssertJ - Fluent assertions that improve readability.
- Awaitility - DSL for synchronizing asynchronous operations.
- Citrus - Integration testing framework with focus on client- and serverside messaging.
- Cucumber - BDD testing framework.
- Gatling - Load testing tool designed for ease of use, maintainability and high performance.
- GreenMail - In-memory email server for integration testing. Supports SMTP, POP3 and IMAP including SSL.
- Hamcrest - Matchers that can be combined to create flexible expressions of intent.
- JGiven - Developer-friendly BDD testing framework compatible with JUnit and TestNG.
- JMockit - Mocks static, final methods and more.
- JUnit - Common testing framework.
- JUnitParams - Creation of readable and maintainable parametrised tests.
- Mockito - Creation of test double objects in automated unit tests for the purpose of TDD or BDD.
- Moco - Concise web services for stubs and mocks, Duke's Choice Award 2013.
- PIT - Fast mutation-testing framework for evaluating fault-detection abilities of existing JUnit or TestNG test-suites.
- PowerMock - Enables mocking of static methods, constructors, final classes and methods, private methods and removal of static initializers.
- REST Assured - Java DSL for easy testing for REST/HTTP services.
- Selenide - Concise API around Selenium to write stable and readable UI tests.
- Selenium - Portable software testing framework for web applications.
- Spock - JUnit-compatible framework featuring an expressive Groovy-derived specification language.
- TestNG - Testing framework.
- Truth - Google's assertion and proposition framework.
- Unitils - Modular testing library for unit and integration testing.
- WireMock - Stubbs and mocks web services.
Frameworks and tools that enable collection of code coverage metrics for test suites.
- JaCoCo - Framework that enables collection of code coverage metrics, using both offline and runtime bytecode instrumentation; prominently used by EclEmma, the Eclipse code-coverage plugin.
- Clover - Proprietary code coverage tool by Atlassian that relies on source-code instrumentation, instead of bytecode instrumentation.
- Cobertura - Relies on offline (or static) bytecode instrumentation and class loading to collect code coverage metrics; GPLv2 licensed.
- JCov - Code coverage tool used in the OpenJDK project's development toolchain.
Tools which support continuously building, testing and releasing applications.
- Bamboo - Atlassian's solution with good integration of their other products. You can either apply for an open-source license or buy it.
- CircleCI - Hosted service with a free trial.
- Codeship - Hosted services with a limited free plan.
- fabric8 - Integration platform for containers.
- Go - ThoughtWork's open-source solution.
- Jenkins - Provides server-based deployment services.
- TeamCity - JetBrain's CI solution with a free version.
- Travis - Hosted service often used for open-source projects.
Formal-methods tools: proof assistants, model checking, symbolic execution etc.
- CATG - Concolic unit testing engine. Automatically generates unit tests using formal methods.
- Checker Framework - Pluggable type systems. Includes nullness types, physical units, immutability types and more.
- Daikon - Daikon detects likely program invariants and can generate JML specs based on those invariats.
- Java Modeling Language (JML) - Behavioral interface specification language that can be used to specify the behavior of code modules. It combines the design by contract approach of Eiffel and the model-based specification approach of the Larch family of interface specification languages, with some elements of the refinement calculus. Used by several other verification tools.
- Java Path Finder (JPF) - JVM formal verification tool containing a model checker and more. Created by NASA.
- jCUTE - Concolic unit testing engine that automatically generates unit tests. Concolic execution combines randomized concrete execution with symbolic execution and automatic constraint solving.
- JMLOK 2.0 - Detects nonconformances between code and JML specification through the feedback-directed random tests generation, and suggests a likely cause for each nonconformance detected.
- KeY - The KeY System is a formal software development tool that aims to integrate design, implementation, formal specification, and formal verification of object-oriented software as seamlessly as possible. Uses JML for specification and symbolic execution for verification.
- OpenJML - Translates JML specifications into SMT-LIB format and passes the proof problems implied by the program to backend solvers.
Integrated development environments that try to simplify several aspects of development.
- Eclipse - Established, open-souce project with support for lots of plugins and languages.
- IntelliJ IDEA - Supports a lot of JVM languages and provides good options for Android development. The commercial edition targets the enterprise sector.
- NetBeans - Provides integration for several Java SE and EE features from database access to HTML5.
Tools which handle the build cycle and dependencies of an application.
- Apache Maven - Declarative build and dependency management which favors convention over configuration. It might be preferable to Apache Ant which uses a rather procedural approach and can be difficult to maintain.
- Bazel - Build tool from Google that builds code quickly and reliably.
- Gradle - Incremental builds which are programmed via Groovy instead of declaring XML. Works well with Maven's dependency management.
Libraries that provide external configuration.
Tools which handle the distribution of applications in native formats.
- Bintray - Version control for binaries which handles the publishing. Can also be used with Maven or Gradle and has a free plan for open-source software or several business plans.
- Capsule - Simple and powerful packaging and deployment. A fat JAR on steroids or a "Docker for Java" that supports JVM-optimized containers.
- Central Repository - Largest binary component repository available as a free service to the open-source community. Default used by Apache Maven and available in all other build tools.
- IzPack - Setup authoring tool for cross-platform deployments.
- JitPack - Easy to use package repository for GitHub. Builds Maven/Gradle projects on demand and publishes ready-to-use packages.
- Launch4j - Wraps JARs in lightweight and native Windows executables.
- Nexus - Binary management with proxy and caching capabilities.
- packr - Packs JARs, assets and the JVM for native distribution on Windows, Linux and Mac OS X.
Tools for performance analysis, profiling and benchmarking.
- jHiccup - Logs and records platform JVM stalls.
- JMH - Microbenchmarking tool for the JVM.
- JProfiler - Commercial profiler.
- LatencyUtils - Utilities for latency measurement and reporting.
- VisualVM - Visual interface for detailed information about running applications.
- YourKit Java Profiler - Commercial profiler.
Tools that provide metrics and quality measurements.
- Checkstyle - Static analysis of coding conventions and standards.
- Error Prone - Catches common programming mistakes as compile-time errors.
- FindBugs - Static analysis of bytecode to find potential bugs.
- jQAssistant - Static code analysis with Neo4J-based query language.
- PMD - Source code analysis for finding bad coding practices.
- SonarQube - Integrates other analysis components via plugins and provides an overview of the metrics over time.
Tools that monitor applications in production.
- AppDynamics - Commercial performance monitor.
- JavaMelody - Performance monitoring and profiling.
- jmxtrans - Tool to connect to multiple JVMs and to query them for their attributes via JMX. Its query language is based on JSON, which allows non-Java programmers to access the JVMs attributes. Likewise, this tool supports different output writes, including Graphite, Ganglia, StatsD, among others.
- Kamon - Tool for monitoring applications running on the JVM.
- New Relic - Commercial performance monitor.
- SPM - Commercial performance monitor with distributing transaction tracing for JVM apps.
- Takipi - Commercial in-production error monitoring and debugging.
Current implementations of the JVM/JDK.
- JDK 9 - Early access releases of JDK 9.
- OpenJDK - Open-source implementation for Linux.
- Zulu OpenJDK - OpenJDK builds for Windows, Linux, and Mac OS X through Java 8.
- Zulu OpenJDK 9 - Early access OpenJDK 9 builds for Windows, Linux, and Mac OS X.
-
Frameworks that help to create parsers, interpreters or compilers.*
-
ANTLR - Complex full-featured framework for top-down parsing.
-
JavaCC - More specific and slightly easier to learn. Has syntactic lookahead.
- Design Patterns - Implementation and explanation of the most common design patterns.
- Modern Java - A Guide to Java 8 - Popular Java 8 guide.
In existence since the beginning of time and which will continue being used long after the hype has waned.
- Apache Ant - Build process management with XML.
- cglib - Bytecode generation library.
- GlassFish - Application server and reference implementation for Java EE sponsored by Oracle.
- Hudson - Continuous integration server still in active development.
- JavaServer Faces - Oracle's open-source implementation of the JSF standard, Mojarra.
- JavaServer Pages - Common templating for websites with custom tag libraries.
Everything else.
- Jimfs - In-memory file system.
- Lanterna - Easy console text GUI library similar to curses.
- LightAdmin - Pluggable CRUD UI library for rapid application development.
Active discussions. Up
- r/java - Subreddit for the Java community.
- stackoverflow - Question/answer platform.
- vJUG - Virtual Java User Group.
Books that had a high impact and are still worth reading. Up
Sites to read. Up