An open API service indexing awesome lists of open source software.

awesome-java

Java通用基础组件汇总列表
https://github.com/wangchongjie/awesome-java

Last synced: about 10 hours ago
JSON representation

  • REST Frameworks

    • Feign - HTTP client binder inspired by Retrofit, JAXRS-2.0, and WebSocket.
    • Jersey - JAX-RS reference implementation.
    • Spark - Sinatra inspired framework.
    • Swagger - Swagger is a specification and complete framework implementation for describing, producing, consuming, and visualizing RESTful web services.
    • rest.li - Framework for building robust, scalable RESTful architectures using type-safe bindings and asynchronous, non-blocking IO with an end-to-end developer workflow that promotes clean practices, uniform interface design and consistent data modeling.
    • RestExpress - Thin wrapper on the JBoss Netty HTTP stack to provide scaling and performance.
    • Dropwizard - Opinionated framework for setting up modern web applications with Jetty, Jackson, Jersey and Metrics.
    • Microserver - monolith and pure microservices styles.
  • Cluster Management

    • Singularity - Singularity is a Mesos framework that makes deployment and operations easy. It supports web services, background workers, scheduled jobs, and one-off tasks.
  • High Performance

    • Agrona - Data structures and utility methods that are common in high-performance applications.
    • Koloboke - Hash sets and hash maps.
    • Disruptor - Inter-thread messaging library.
    • fastutil - Fast and compact type-specific collections.
    • HPPC - Primitive collections.
    • GS Collections - Collection framework inspired by Smalltalk.
    • JCTools - Concurrency tools currently missing from the JDK.
  • JSON Processing

    • JsonPath - Extract data from JSON using XPATH like syntax.
    • fastjson - Very fast processor with no additional dependencies and full data binding.
    • Jolt - JSON to JSON transformation tool.
    • JsonSurfer - Streaming JsonPath processor dedicated to processing big and complicated JSON data.
  • Natural Language Processing

    • CoreNLP - Stanford's CoreNLP provides a set of fundamental tools for tasks like tagging, named entity recognition, sentiment analysis and many more.
    • DKPro - A collection of re-usable NLP tools for linguistic pre-processing, machine learning, lexical resources, etc.
    • LingPipe - Toolkit for a variety of tasks ranging from POS tagging to sentiment analysis.
  • Twitter

    • Bruno Borges - Product Manager/Java Jock at Oracle.
    • OpenJDK - Official OpenJDK account.
    • Aleksey Shipilëv - Performance Geek, Benchmarking Tzar, Concurrency Bug Hunter.
    • Adam Bien - Freelancer: Author, JavaONE Rockstar Speaker, Consultant, Java Champion.
    • Antonio Goncalves - Java Champion, JUG Leader, Devoxx France, Java EE 6/7, JCP, Author.
    • Arun Gupta - Java Champion, JavaOne Rockstar, JUG Leader, Devoxx4Kids-er, VP of Developer Advocacy at Couchbase.
    • Brian Goetz - Java Language Architect at Oracle.
    • Bruno Borges - Product Manager/Java Jock at Oracle.
    • Ed Burns - Consulting Member of the Technical Staff at Oracle.
    • Eugen Paraschiv - Author of the Spring Security Course.
    • James Weaver - Java/JavaFX/IoT developer, author and speaker.
    • Java EE - Official Java EE Twitter account.
    • Java Magazine - Official Java Magazine account.
    • Java - Official Java Twitter account.
    • Javin Paul - Well-known Java blogger.
    • Lukas Eder - Java Champion, speaker, JUG.ch co-leader, Founder and CEO Data Geekery (jOOQ).
    • Mario Fusco - RedHatter, JUG coordinator, frequent speaker and author.
    • Mark Reinhold - Chief Architect, Java Platform Group, Oracle.
    • Markus Eisele - Java EE evangelist, Red Hat.
    • Martijn Verburg - London JUG co-leader, speaker, author, Java Champion and much more.
    • Martin Thompson - Pasty faced performance gangster.
    • OpenJDK - Official OpenJDK account.
    • Peter Lawrey - Peter Lawrey, Java performance expert.
    • Reza Rahman - Java EE/GlassFish/WebLogic evangelist, author, speaker, open source hacker.
    • Simon Maple - Java Champion, virtualJUG founder, LJC leader, RebelLabs author.
    • Stephen Colebourne - Java Champion, speaker.
    • Trisha Gee - Java Champion and speaker.
    • Arun Gupta - Java Champion, JavaOne Rockstar, JUG Leader, Devoxx4Kids-er, VP of Developer Advocacy at Couchbase.
    • Java EE - Official Java EE Twitter account.
    • Simon Maple - Java Champion, virtualJUG founder, LJC leader, RebelLabs author.
    • Trisha Gee - Java Champion and speaker.
    • Adam Bien - Freelancer: Author, JavaONE Rockstar Speaker, Consultant, Java Champion.
    • Java - Official Java Twitter account.
    • Brian Goetz - Java Language Architect at Oracle.
    • James Weaver - Java/JavaFX/IoT developer, author and speaker.
    • Lukas Eder - Java Champion, speaker, JUG.ch co-leader, Founder and CEO Data Geekery (jOOQ).
    • Mark Reinhold - Chief Architect, Java Platform Group, Oracle.
    • Martijn Verburg - London JUG co-leader, speaker, author, Java Champion and much more.
    • Peter Lawrey - Peter Lawrey, Java performance expert.
    • Stephen Colebourne - Java Champion, speaker.
    • Java Magazine - Official Java Magazine account.
    • Javin Paul - Well-known Java blogger.
    • Mario Fusco - RedHatter, JUG coordinator, frequent speaker and author.
    • Markus Eisele - Java EE evangelist, Red Hat.
    • Antonio Goncalves - Java Champion, JUG Leader, Devoxx France, Java EE 6/7, JCP, Author.
    • Aleksey Shipilëv - Performance Geek, Benchmarking Tzar, Concurrency Bug Hunter.
    • Ed Burns - Consulting Member of the Technical Staff at Oracle.
    • Eugen Paraschiv - Author of the Spring Security Course.
    • Martin Thompson - Pasty faced performance gangster.
    • Reza Rahman - Java EE/GlassFish/WebLogic evangelist, author, speaker, open source hacker.
  • Formal Verification

    • Daikon - Daikon detects likely program invariants and can generate JML specs based on those invariats.
    • Checker Framework - Pluggable type systems. Includes nullness types, physical units, immutability types and more.
    • CATG - Concolic unit testing engine. Automatically generates unit tests using formal methods.
    • Java Path Finder (JPF) - JVM formal verification tool containing a model checker and more. Created by NASA.
  • JSON

    • JSON-io - Convert Java to JSON. Convert JSON to Java. Pretty print JSON. Java JSON serializer.
    • LoganSquare - JSON parsing and serializing library based on Jackson's streaming API. Outperforms GSON & Jackson's 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.
    • Genson - Powerful and easy to use Java to JSON conversion library.
    • Jackson-datatype-money - Open-source Jackson module to support JSON serialization and deserialization of JavaMoney data types.
  • Messaging

    • JeroMQ - Implementation of ZeroMQ.
    • RocketMQ - A fast, reliable, and scalable distributed messaging platform.
    • Apache Camel - Glues together different transport APIs via Enterprise Integration Patterns.
    • Hermes - Fast and reliable message broker built on top of Kafka.
    • Smack - Cross-platform XMPP client library.
    • Aeron - Efficient reliable unicast and multicast message transport.
    • Nakadi - Provides a RESTful API on top of Kafka.
  • Native

    • 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](http://openjdk.java.net/projects/panama/).
    • JNA - Work with native libraries without writing JNI. Also provides interfaces to common system libraries.
  • Performance analysis

    • Apache Lucene - High-performance, full-featured cross-platform text search engine library.
    • Elasticsearch - Distributed, multitenant-capable full-text search engine with a RESTful web interface and schema-free JSON documents.
  • Security

    • OACC - Provides permission-based authorization services.
    • pac4j - Security engine.
    • Bouncy Castle - All-purpose cryptographic library. JCA provider, wide range of functions from basic helpers to PGP/SMIME operations.
    • OACC - Provides permission-based authorization services.
    • Keycloak - Integrated SSO and IDM for browser apps and RESTful web services.
    • PicketLink - Umbrella project for security and identity management.
    • Cryptomator - Multiplatform transparent client-side encryption of files in the cloud.
    • Bouncy Castle - All-purpose cryptographic library. JCA provider, wide range of functions from basic helpers to PGP/SMIME operations.
    • Google Keyczar - Easy to use, yet safe encryption framework with key versioning.
  • Serialization

    • FlatBuffers - Memory efficient serialization library that can access serialized data without unpacking and parsing it.
    • FST - JDK compatible high performance object graph serialization.
    • Kryo - Fast and efficient object graph serialization framework.
    • MessagePack - Efficient binary serialization format.
  • Server

  • Testing

    • Citrus - Integration testing framework with focus on client- and serverside messaging.
    • ConcurrentUnit - Toolkit for testing multi-threaded and asynchronous applications.
    • GreenMail - In-memory email server for integration testing. Supports SMTP, POP3 and IMAP including SSL.
    • JMockit - Mocks static, final methods and more.
    • Spock - JUnit-compatible framework featuring an expressive Groovy-derived specification language.
    • JMockit - Mocks static, final methods and more.
    • JMockit - Mocks static, final methods and more.
    • JMockit - Mocks static, final methods and more.
    • JMockit - Mocks static, final methods and more.
    • JMockit - Mocks static, final methods and more.
    • JMockit - Mocks static, final methods and more.
    • JMockit - Mocks static, final methods and more.
    • JMockit - Mocks static, final methods and more.
    • Awaitility - DSL for synchronizing asynchronous operations.
    • PowerMock - Enables mocking of static methods, constructors, final classes and methods, private methods and removal of static initializers.
    • JMockit - Mocks static, final methods and more.
    • JMockit - Mocks static, final methods and more.
    • JMockit - Mocks static, final methods and more.
    • JMockit - Mocks static, final methods and more.
    • WireMock - Stubbs and mocks web services.
    • Arquillian - Integration and functional testing platform for Java EE containers.
    • AssertJ - Fluent assertions that improve readability.
    • Cucumber - BDD testing framework.
    • junit-dataprovider - A TestNG like dataprovider runner for JUnit.
    • 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.
    • Selenium - Portable software testing framework for web applications.
    • Truth - Google's assertion and proposition framework.
  • Utility

    • CRaSH - Provides a shell into a JVM that's running CRaSH. Used by Spring Boot and others.
    • Dex - Java/JavaFX tool capable of powerful ETL and data visualization.
    • Guava - Collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and so forth.
    • Apache Commons - Provides different general purpose functions like configuration, validation, collections, file upload or XML processing.
    • Gephi - Cross-platform for visualizing and manipulating large graph networks.
    • JADE - Framework and environment for building and to debugging multi-agent systems.
    • JavaVerbalExpressions - A library that helps to construct difficult regular expressions.
  • Ancients

    • Trove - Primitive collections.
    • Apache OpenNLP - Toolkit for common tasks like tokenization.
    • JavaServer Pages - Common templating for websites with custom tag libraries.
    • GlassFish - Application server and reference implementation for Java EE sponsored by Oracle.
    • Apache Ant - Build process management with XML.
    • Apache Velocity - Templates for HTML pages, emails or source code generation in general.
    • FreeMarker - General templating engine without any heavyweight or opinionated dependencies.
    • GWT - Toolbox which includes a Java-to-JavaScript compiler for client-side code, XML parser, API for RPC, JUnit integration, internationalization support and widgets for the GUI.
    • HornetQ - Clear, concise, modular and made to be embedded.
    • 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.
    • JUnit - Common testing framework.
    • TestNG - Testing framework.
    • Hudson - Continuous integration server still in active development.
    • JavaCC - More specific and slightly easier to learn. Has syntactic lookahead.
    • Quartz - Open-source job scheduler library with Apache 2.0 license.
    • Trove - Primitive collections.
    • JavaServer Faces - Oracle's open-source implementation of the JSF standard, Mojarra.
  • Continuous Integration

    • fabric8 - Integration platform for containers.
    • TeamCity - JetBrain's CI solution with a free version.
    • Travis - Hosted service often used for open-source projects.
    • Bamboo - Atlassian's solution with good integration of their other products. You can either apply for an open-source license or buy it.
    • Go - ThoughtWork's open-source solution.
  • Distributed Applications

    • JGroups - Toolkit for reliable messaging and creating clusters.
    • Atomix - Fault-tolerant distributed coordination framework.
    • Akka - Toolkit and runtime for building concurrent, distributed, and fault tolerant event-driven applications.
    • Hazelcast - Highly scalable in-memory datagrid.
    • Lagom - Framework for creating microservice-based systems.
    • Copycat - Fault-tolerant state machine replication framework.
    • Hystrix - Provides latency and fault tolerance.
    • JGroups - Toolkit for reliable messaging and creating clusters.
    • Orbit - Virtual Actors, adding another level of abstraction to traditional actors.
    • Quasar - Lightweight threads and actors for the JVM.
  • Functional Programming

    • Javaslang - Functional component library that provides persistent data types and functional control structures.
    • Javaslang - Functional component library that provides persistent data types and functional control structures.
    • derive4j - Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching, morphisms.
    • Fugue - Functional extensions to Guava.
    • Functional Java - Implements numerous basic and advanced programming abstractions that assist composition-oriented development.
    • jOOλ - Extension to Java 8 which aims to fix gaps in lambda, providing numerous missing types and a rich set of sequential Stream API additions.
  • Geospatial

    • H2GIS - A spatial extension of the H2 database.
    • Apache SIS - Library for developing geospatial applications.
    • Geotoolkit.org - Library for developing geospatial applications. Built on top of the Apache SIS project.
  • Imagery

    • ZXing - Multi-format 1D/2D barcode image processing library.
    • Imgscalr - Simple and efficient hardware-accelerated image-scaling library implemented in pure Java 2D.
    • Thumbnailator - Thumbnailator is a high-quality thumbnail generation library for Java.
    • TwelveMonkeys - Collection of plugins which extend the number of supported image file formats.
  • JVM and JDK

    • JDK 9 - Early access releases of JDK 9.
    • ParparVM - VM with non-blocking concurrent GC for iOS.
    • Avian - JVM with both a JIT & AOT modes. Includes an iOS port.
    • OpenJDK - Open-source implementation for Linux.
  • Machine Learning

    • Apache Flink - Fast and reliable large-scale data processing engine.
    • Weka - Collection of algorithms for data mining tasks ranging from pre-processing to visualization.
    • Apache Mahout - Scalable algorithms focused on collaborative filtering, clustering and classification.
    • Weka - Collection of algorithms for data mining tasks ranging from pre-processing to visualization.
    • JSAT - Algorithms for pre-processing, classification, regression, and clustering with support for multi-threaded execution.
    • Oryx 2 - A framework for building real-time large scale machine learning applications, which also includes end-to-end applications for collaborative filtering, classification, regression, and clustering.
    • DeepDive - Creates structured information from unstructured data and integrates it into an existing database.
  • Miscellaneous

    • JPad - Snippet runner.
    • JPad - Snippet runner.
    • J2ObjC - Java to Objective-C translator for porting Android libraries to iOS.
    • jabba - Java Version Manager inspired by nvm.
    • Jimfs - In-memory file system.
    • Codename One - Cross platform solution for writing native mobile (iOS, Android, etc.)
    • Design Patterns - Implementation and explanation of the most common design patterns.
    • Failsafe - Simple failure handling with retries and circuit breakers.
    • Lanterna - Easy console text GUI library similar to curses.
    • Modern Java - A Guide to Java 8 - Popular Java 8 guide.
    • TypeTools - Tools for resolving generic types.
  • Monitoring

    • SPM - Commercial performance monitor with distributing transaction tracing for JVM apps.
    • JavaMelody - Performance monitoring and profiling.
    • Pinpoint - Open source APM tool.
    • AppDynamics - Commercial performance monitor.
    • Jolokia - JMX over REST.
    • Kamon - Tool for monitoring applications running on the JVM.
    • Prometheus - Provides a multi-dimensional data model, DSL, autonomous server nodes and much more.
    • Glowroot - Open source Java APM.
    • Stagemonitor - Open source performance monitoring and transaction tracing for JVM apps.
  • PDF

  • Web Frameworks

    • Pippo - Small, highly modularized Sinatra-like framework.
    • Pippo - Small, highly modularized Sinatra-like framework.
    • Apache Tapestry - Component-oriented framework for creating dynamic, robust, highly scalable web applications.
    • Apache Wicket - Component-based web application framework similar to Tapestry with a stateful GUI.
    • Blade - Lightweight, modular framework which aims to be elegant and simple.
    • Ninja - Full stack web framework.
    • PrimeFaces - JSF framework which has a free and a commercial version with support. Provides several frontend components.
    • Grails - Groovy framework with the aim to provide a highly productive environment by favoring convention over configuration, no XML and support for mixins.
    • Play - Uses convention over configuration, hot code reloading and display of errors in the browser.
    • Ratpack - Set of libraries that facilitate fast, efficient, evolvable and well tested HTTP applications.
  • Influential Books

  • Podcasts

  • Websites

  • Bytecode Manipulation

    • Javassist - Tries to simplify the editing of bytecode.
    • Byte Buddy - Further simplifies bytecode generation with a fluent API.
    • Byteman - Manipulate bytecode at runtime via DSL (rules) mainly for testing/troubleshooting.
    • ASM - All purpose, low level, bytecode manipulation and analysis.
    • cglib - Bytecode generation library.
  • Code Coverage

    • Cobertura - Relies on offline (or static) bytecode instrumentation and class loading to collect code coverage metrics; GPLv2 licensed.
  • Date and Time

    • Almanac Converter - Simple conversion between different calendar systems.
    • ThreeTenBP - Port of JSR 310 (java.time package) by the author of Joda-Time.
    • Time4J - Advanced date and time library.
  • Logging

    • Logbook - Extensible, open-source library for HTTP request and response logging.
    • Kibana - Analyzes and visualizes log files. Some features require payment.
    • Logstash - Tool for managing log files.
    • Logback - Robust logging library with interesting configuration options via Groovy.
    • SLF4J - Abstraction layer which is to be used with an implementation.
    • Graylog - Open-source aggregator suited for extended role and permission management.
    • tinylog - Lightweight logging framework with static logger class.
  • Command-line Argument Parsers

    • JOpt Simple - Simple parser that uses the POSIX getopt() and GNU getopt_long() syntaxes. Does not use annotations, uses a fluent API instead.
    • JOpt Simple - Simple parser that uses the POSIX getopt() and GNU getopt_long() syntaxes. Does not use annotations, uses a fluent API instead.
    • args4j - Small library to parse command like arguments similar to javac.
    • JCommander - Command line arguments parsing framework with custom types and validation via implementing interfaces.
  • CSV

    • Super CSV - Powerful CSV parser with support for Dozer, Joda-Time and Java 8.
    • opencsv - Simple CSV parser with a commercial-friendly license.
    • uniVocity-parsers - One of the fastest and most feature-complete CSV. Also comes with parsers for TSV and fixed width records.
  • Database

    • Flyway - Simple database migration tool.
    • MapDB - Embedded database engine that provides concurrent collections backed on disk or in off-heap memory.
    • Chronicle Map - Efficient in-memory (opt. persisted to disk) off-heap key-value store.
    • eXist - A NoSQL document database and application platform.
    • FlexyPool - Brings metrics and failover strategies to the most common connection pooling solutions.
    • HikariCP - High performance JDBC connection pool.
    • Jedis - A small client for interaction with redis, with methods for commands.
    • Presto - Distributed SQL query engine for big data.
    • Apache Hive - Data warehouse infrastructure built on top of Hadoop.
    • H2 - Small SQL Database notable for its in-memory functionality.
    • JDBI - Convenient abstraction of JDBC.
    • jOOQ - Generates typesafe code based on SQL schema.
    • Querydsl - Typesafe unified queries.
    • Realm - Mobile database to run directly inside phones, tablets or wearables.
    • Speedment - A database access library that utilizes the Java 8 Stream API for querying.
    • Vibur DBCP - JDBC connection pool library which offers advanced performance monitoring capabilities.
  • Code Analysis

    • Checkstyle - Static analysis of coding conventions and standards.
    • Error Prone - Catches common programming mistakes as compile-time errors.
    • 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.
    • FindBugs - Static analysis of bytecode to find potential bugs.
  • Web Crawling

    • Crawler4j - Simple and lightweight web crawler.
    • JSoup - Scrapes, parses, manipulates and cleans HTML.
  • Build

    • Bazel - Build tool from Google that builds code quickly and reliably.
  • Compiler-compiler

    • JFlex - A lexical analyzer generator.
  • Dependency Injection

  • Distributed Databases

    • Druid - Real-time and historical OLAP data store that excel at aggregation and approximation queries.
    • Infinispan - Highly concurrent key/value datastore used for caching.
  • Distribution

    • Capsule - Simple and powerful packaging and deployment. A fat JAR on steroids or a "Docker for Java" that supports JVM-optimized containers.
    • IzPack - Setup authoring tool for cross-platform deployments.
    • 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.
    • JitPack - Easy to use package repository for GitHub. Builds Maven/Gradle projects on demand and publishes ready-to-use packages.
    • Nexus - Binary management with proxy and caching capabilities.
  • GUI

    • SWT - The Standard Widget Toolkit (SWT) is a graphical widget toolkit for use with the Java platform.
    • JavaFX - The successor of Swing.
    • Scene Builder - Visual layout tool for JavaFX applications.
  • IDE

    • 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.
  • Networking

    • Netty - Framework for building high performance network applications.
    • Finagle - Extensible RPC system used to construct high-concurrency servers. It implements uniform client and server APIs for several protocols, and is protocol agnostic, which simplifies the implementation of new protocols.
    • gRPC - RPC framework based on protobuf and HTTP/2.
    • Riptide - Client-side response routing for Spring's RestTemplate.
    • urnlib - Java library for representing, parsing and encoding URNs as in RFC 2141.
    • Nifty - Implementation of Thrift clients and servers on Netty.
    • 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.
  • Platform

    • Spring - Provides many packages ranging from dependency injection to aspect-oriented programming to security.
  • Reactive libraries

    • Reactive Streams - Provide a standard for asynchronous stream processing with non-blocking backpressure.
    • Reactor - Library for building reactive fast-data applications.
    • RxJava - Library for composing asynchronous and event-based programs using observable sequences from the JVM.
  • Template Engine

    • Thymeleaf - Aims to be a substitute for JSP and works for XML files in general.
    • Handlebars.java - Logic-less and semantic Mustache templates.
  • Communities

    • stackoverflow - Question/answer platform.
    • vJUG - Virtual Java User Group.
    • r/java - Subreddit for the Java community.
  • Configuration

    • config - Configuration library for JVM languages.
    • owner - Reduces boilerplate of properties.
  • Data structures

    • Apache Avro - Data interchange format featuring among others: dynamic typing, untagged data, absence of manually assigned IDs.
    • Apache Orc - Fast and efficient columnar storage format for hadoop based workloads.
    • Apache Thrift - Data interchange format that originated at Facebook.
    • Protobuf - Google's data interchange format.
    • Wire - Clean, lightweight protocol buffers.
  • Development

    • Immutables - Scala-like case classes.
    • JHipster - Yeoman source code generator to create applications based on Spring Boot and AngularJS.
    • Lombok - Code-generator which aims to reduce the verbosity.
    • Spring Loaded - Class reloading agent.
    • ADT4J - JSR-269 code generator for algebraic data types.
    • Auto - Collection of source code generators.
    • DCEVM - Modification of the JVM that allows unlimited redefinition of loaded classes at runtime.
    • HotswapAgent - Unlimited runtime class and resource redefinition.
  • Game Development

    • jMonkeyEngine - Game engine for modern 3D development.
    • libGDX - All-round cross-platform, high-level framework.
    • LWJGL - Robust framework that abstracts libraries like OpenGL/CL/AL.
  • Frontends

  • Bean Mapping

    • JMapper - Using byte code manipulation for lightning fast mapping. Supporting annotations, API or XML configuration.
    • MapStruct - Code generator which simplifies mappings between different bean types, based on a convention over configuration approach.
    • ModelMapper - ModelMapper is an intelligent object mapping library that automatically maps objects to each other.
    • Orika - Orika is a Java Bean mapping framework that recursively copies (among other capabilities) data from one object to another.
    • Selma - Stupid Simple Statically Linked Mapper. Selma is an Annotation Processor Based bean mapper.
  • Science

    • JGraphT - Graph library that provides mathematical graph-theory objects and algorithms.
    • JGraphX - Library for visualisation (mainly Swing) and interaction with node-edge graphs.
  • Caching

    • Caffeine - High performance, near optimal caching library.
Sub Categories