From 2daab9b020119ba958e662afe42a12fff0dfa728 Mon Sep 17 00:00:00 2001 From: Matt Rosenberger Date: Thu, 10 Jul 2014 11:20:21 -0400 Subject: [PATCH 1/8] Update README.md --- README.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 20a6f63..e88e1a1 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,7 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ - [Database Access](#database-access) - [Date and Time](#date-and-time) - [Dependency Injection](#dependency-injection) + - [Distributed Applications](#distributed-applications) - [GUI](#gui) - [Game Development](#game-development) - [High Performance](#high-performance) @@ -83,12 +84,18 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ ## Dependency Injection -*Libraries that help to realize the [Inversion Of Control](http://en.wikipedia.org/wiki/Inversion_of_control) paradigma* +*Libraries that help to realize the [Inversion Of Control](http://en.wikipedia.org/wiki/Inversion_of_control) paradigm* * [Google Guice](http://de.wikipedia.org/wiki/Google_Guice) * [Spring](http://spring.io/) * [Weld](http://docs.jboss.org/weld/reference/latest/en-US/html_single/) CDI reference implementation +## Distributed Applications +*Libraries and frameworks used to ease writing distributed and fault-tolerant applications* + +* [Akka](http://akka.io) - Toolkit and runtime for building highly concurrent, distributed, and fault tolerant event-driven applications on the JVM. +* [JGroups](http://www.jgroups.org/) - Toolkit for reliable messaging and creating clusters whose nodes can send messages to each other + ## GUI *Libraries to create modern graphical user interfaces* From f95a22ca1d9c9c5755ebd29cec30d7c58e7d17db Mon Sep 17 00:00:00 2001 From: Josh Rhoderick Date: Thu, 10 Jul 2014 11:57:05 -0400 Subject: [PATCH 2/8] Update README.md --- README.md | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 20a6f63..c1e9f25 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,7 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ - [Continuous Integration](#continuous-integration) - [Database Access](#database-access) - [Date and Time](#date-and-time) + - [Development Tools](#development-tools) - [Dependency Injection](#dependency-injection) - [GUI](#gui) - [Game Development](#game-development) @@ -73,6 +74,7 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ * [DBeaver](http://dbeaver.jkiss.org/) - Graphical database manager * [JDBI](http://jdbi.org/) - Simplification of JDBC * [jOOQ](http://www.jooq.org/) - Generates typesafe code based on SQL schema +* [Spring JDBCTemplate](http://www.spring.io/) - Simplification of JDBC ## Date and Time @@ -85,9 +87,15 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ *Libraries that help to realize the [Inversion Of Control](http://en.wikipedia.org/wiki/Inversion_of_control) paradigma* +* [Dagger](http://square.github.io/dagger/) * [Google Guice](http://de.wikipedia.org/wiki/Google_Guice) * [Spring](http://spring.io/) -* [Weld](http://docs.jboss.org/weld/reference/latest/en-US/html_single/) CDI reference implementation +* [Weld](http://docs.jboss.org/weld/reference/latest/en-US/html_single/) - CDI reference implementation + +## Development Tools + +* [DCEVM](http://ssw.jku.at/dcevm/) - A modification of the JVM that allows unlimited redefinition of loaded classes at runtime +* [JRebel](http://zeroturnaround.com/software/jrebel/) - Instantly reloads code and configuration changes without redeploys ## GUI @@ -189,6 +197,7 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ * JSP * [Apache Tapestry](http://tapestry.apache.org/) * [Apache Velocity](http://velocity.apache.org/) +* [Freemarker](http://freemarker.org/) * [Thymeleaf](http://www.thymeleaf.org/) * [Jtwig](http://jtwig.org/) @@ -216,6 +225,7 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ * [Apache Commons](http://commons.apache.org/) * [Google Guava](http://code.google.com/p/guava-libraries/) +* [JavaTuples](http://www.javatuples.org/) - Tuples for Java ## Web Crawling @@ -228,7 +238,7 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ *Frameworks that handle the communication between the layers of an web application* -* [Spring](http://spring.io/) +* [Spring](http://projects.spring.io/spring-framework/) * [Grails](https://grails.org/) * [Vaadin](https://vaadin.com/) * [GWT](http://www.gwtproject.org/) @@ -266,6 +276,9 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ ## Influental Books * [Effective Java (2nd Edition)](http://www.amazon.com/Effective-Java-Edition-Joshua-Bloch/dp/0321356683) +* [Head First Design Patterns](http://www.headfirstlabs.com/books/hfdp/) +* [Java Concurrence in Practice](http://www.amazon.com/Java-Concurrency-Practice-Brian-Goetz/dp/0321349601) +* [Thinking in Java](http://www.amazon.com/Thinking-Java-Edition-Bruce-Eckel/dp/0131872486) # Contributing From 9ad31338e3322bcaec127431827f426fd2c5c23f Mon Sep 17 00:00:00 2001 From: akullpp Date: Thu, 10 Jul 2014 18:39:10 +0200 Subject: [PATCH 3/8] Update README.md Added Compiler-compiler, thanks freefouran --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index 20a6f63..01705be 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,7 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ - [Application Server](#application-server) - [Build Tool](#build-tool) - [Code Analysis](#code-analysis) + - [Compiler-compiler](#compiler-compiler) - [Continuous Integration](#continuous-integration) - [Database Access](#database-access) - [Date and Time](#date-and-time) @@ -59,6 +60,13 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ * [SonarQube](http://www.sonarqube.org/) - Inspection tool for code quality * [FindBugs](http://findbugs.sourceforge.net/) - Static analysis to find potential bugs +## Compiler-compiler + +*Tools that create parsers, interpreters or compilers* + +* [ANTLR](http://www.antlr.org/) +* [JavaCC](https://javacc.java.net/) + ## Continuous Integration *Tools which support continuously building, testing and releasing applications* From 921209034f48d904aa100d440d9c38f49981e152 Mon Sep 17 00:00:00 2001 From: akullpp Date: Thu, 10 Jul 2014 18:44:53 +0200 Subject: [PATCH 4/8] Update README.md Fixed spelling --- README.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 6fc45b2..28289c5 100644 --- a/README.md +++ b/README.md @@ -72,8 +72,7 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ *Tools which support continuously building, testing and releasing applications* -* [Jenkins](http://jenkins-ci.org/) Provides server-based CI services, often seen as the successor to Hudson - +* [Jenkins](http://jenkins-ci.org/) - Provides server-based CI services, often seen as the successor to Hudson ## Database Access @@ -96,7 +95,7 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ * [Google Guice](http://de.wikipedia.org/wiki/Google_Guice) * [Spring](http://spring.io/) -* [Weld](http://docs.jboss.org/weld/reference/latest/en-US/html_single/) CDI reference implementation +* [Weld](http://docs.jboss.org/weld/reference/latest/en-US/html_single/) - CDI reference implementation ## Distributed Applications *Libraries and frameworks used to ease writing distributed and fault-tolerant applications* From 1f0449327ea0eb1115ced549bd07b1ab39ed1563 Mon Sep 17 00:00:00 2001 From: akullpp Date: Thu, 10 Jul 2014 20:16:54 +0200 Subject: [PATCH 5/8] Update README.md Fixed order and added the resources topic. Removed Head First Design Patterns, see discussion. Added Communities --- README.md | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 5717e67..d66575a 100644 --- a/README.md +++ b/README.md @@ -10,8 +10,8 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ - [Continuous Integration](#continuous-integration) - [Database Access](#database-access) - [Date and Time](#date-and-time) - - [Development Tools](#development-tools) - [Dependency Injection](#dependency-injection) + - [Development Tools](#development-tools) - [Distributed Applications](#distributed-applications) - [GUI](#gui) - [Game Development](#game-development) @@ -35,6 +35,7 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ - [Resources](#resources) - [Twitter](#twitter) - [Websites](#websites) + - [Communities](#communities) - [Influental Books](#influental-books) - [Contributing](#contributing) @@ -100,17 +101,17 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ * [Spring](http://spring.io/) * [Weld](http://docs.jboss.org/weld/reference/latest/en-US/html_single/) - CDI reference implementation +## Development Tools + +* [DCEVM](http://ssw.jku.at/dcevm/) - A modification of the JVM that allows unlimited redefinition of loaded classes at runtime +* [JRebel](http://zeroturnaround.com/software/jrebel/) - Instantly reloads code and configuration changes without redeploys + ## Distributed Applications *Libraries and frameworks used to ease writing distributed and fault-tolerant applications* * [Akka](http://akka.io) - Toolkit and runtime for building highly concurrent, distributed, and fault tolerant event-driven applications on the JVM. * [JGroups](http://www.jgroups.org/) - Toolkit for reliable messaging and creating clusters whose nodes can send messages to each other -## Development Tools - -* [DCEVM](http://ssw.jku.at/dcevm/) - A modification of the JVM that allows unlimited redefinition of loaded classes at runtime -* [JRebel](http://zeroturnaround.com/software/jrebel/) - Instantly reloads code and configuration changes without redeploys - ## GUI *Libraries to create modern graphical user interfaces* @@ -265,8 +266,10 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ *Frameworks specifically for creating RESTful services* -* [Dropwizard](https://dropwizard.github.io/dropwizard/) -* [Jersey](https://jersey.java.net/) +* [Dropwizard](https://dropwizard.github.io/dropwizard/) - Opinionated framework for setting up modern web applications, includes Jetty, Jackson, Jersey and Metrics +* [Jersey](https://jersey.java.net/) - JAX-RS reference implementation + +# Resources ## Twitter @@ -287,10 +290,15 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ * [Java.net](http://java.net/) +## Communities + +* [r/java](http://www.reddit.com/r/java) - Subreddit for the Reddit Java community + ## Influental Books +*Books about Java that had a high impact and are still worth reading* + * [Effective Java (2nd Edition)](http://www.amazon.com/Effective-Java-Edition-Joshua-Bloch/dp/0321356683) -* [Head First Design Patterns](http://www.headfirstlabs.com/books/hfdp/) - Simplified approach to GoF's Design Patterns * [Java Concurrence in Practice](http://www.amazon.com/Java-Concurrency-Practice-Brian-Goetz/dp/0321349601) * [Thinking in Java](http://www.amazon.com/Thinking-Java-Edition-Bruce-Eckel/dp/0131872486) From 490fb5073c25d3d27708b98cfe9c599223346698 Mon Sep 17 00:00:00 2001 From: akullpp Date: Thu, 10 Jul 2014 20:23:11 +0200 Subject: [PATCH 6/8] Update README.md Renamed "Application Server" to "Server" since we added non-application servers too. --- README.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index d66575a..db75465 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,6 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [awesome-python](https://github.com/vinta/awesome-python). Topics which have no libraries as of yet are located in README.tmp! - [Awesome Java](#awesome-java) - - [Application Server](#application-server) - [Build Tool](#build-tool) - [Code Analysis](#code-analysis) - [Compiler-compiler](#compiler-compiler) @@ -26,6 +25,7 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ - [Natural Language Processing](#natural-language-processing) - [ORM](#orm) - [Permissions](#permissions) + - [Server](#server) - [Template Engine](#template-engine) - [Testing](#testing) - [Utility](#utility) @@ -39,15 +39,6 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ - [Influental Books](#influental-books) - [Contributing](#contributing) -## Application Server - -*Servers which are specifically used to deploy applications* - -* [GlassFish](https://glassfish.java.net/) - Open source reference implementation for Java EE sponsored by Oracle -* [WildFly](http://www.wildfly.org/) - Formerly known as JBoss and developed by Red Hat with extensive Java EE support -* [Jetty](http://www.eclipse.org/jetty/) - Lightweight, small server often embedded in projects. Part of the Eclipse Foundation -* [Apache Tomcat](http://tomcat.apache.org/) - Robust allround server for Servlet and JSP - ## Build Tool *Tools which handle the buildcycle of an application* @@ -205,6 +196,15 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ * [Apache Shiro](http://shiro.apache.org/) +## Application Server + +*Servers which are specifically used to deploy applications* + +* [GlassFish](https://glassfish.java.net/) - Open source reference implementation for Java EE sponsored by Oracle +* [WildFly](http://www.wildfly.org/) - Formerly known as JBoss and developed by Red Hat with extensive Java EE support +* [Jetty](http://www.eclipse.org/jetty/) - Lightweight, small server often embedded in projects. Part of the Eclipse Foundation +* [Apache Tomcat](http://tomcat.apache.org/) - Robust allround server for Servlet and JSP + ## Template Engine *Tools which substitute expressions in a template* From c9ad4164dd07dae5d06ce351ade68e28f335cb7b Mon Sep 17 00:00:00 2001 From: akullpp Date: Thu, 10 Jul 2014 20:23:47 +0200 Subject: [PATCH 7/8] Update README.md Forgot to rename headline --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index db75465..0d46427 100644 --- a/README.md +++ b/README.md @@ -196,7 +196,7 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ * [Apache Shiro](http://shiro.apache.org/) -## Application Server +## Server *Servers which are specifically used to deploy applications* From 8a1c0d785c92cdc3ea0fe0fa1a86be1f9b815a62 Mon Sep 17 00:00:00 2001 From: akullpp Date: Thu, 10 Jul 2014 22:09:11 +0200 Subject: [PATCH 8/8] Update README.md Re-added Hudson, thanks knacht-net --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 0d46427..158993e 100644 --- a/README.md +++ b/README.md @@ -65,6 +65,7 @@ A curated list of awesome Java frameworks, libraries and software. Inspired by [ *Tools which support continuously building, testing and releasing applications* +* [Hudson](http://jenkins-ci.org/) * [Jenkins](http://jenkins-ci.org/) - Provides server-based CI services, often seen as the successor to Hudson ## Database Access