diff --git a/hello world b/hello world new file mode 100644 index 00000000..ca5cb81e --- /dev/null +++ b/hello world @@ -0,0 +1,9 @@ +class Test +{ + // Your program begins with a call to main(). + // Prints "Hello World" to the terminal window in Java. + public static void main(String args[]) + { + System.out.println("Hello World!"); + } +} diff --git a/helloooo world b/helloooo world new file mode 100644 index 00000000..1912d379 --- /dev/null +++ b/helloooo world @@ -0,0 +1,11 @@ +/* This is a simple Java program. +FileName : "HelloWorld.java". */ +class HelloWorld +{ + // Your program begins with a call to main(). + // Prints "Hello, World" to the terminal window. + public static void main(String args[]) + { + System.out.println("Hello, World"); + } +} diff --git a/helloworlds/1.1-common-frameworks-and-lib/apache-commons-lib/pom.xml b/helloworlds/1.1-common-frameworks-and-lib/apache-commons-lib/pom.xml index a85170bf..7442636f 100644 --- a/helloworlds/1.1-common-frameworks-and-lib/apache-commons-lib/pom.xml +++ b/helloworlds/1.1-common-frameworks-and-lib/apache-commons-lib/pom.xml @@ -27,17 +27,17 @@ com.google.guava guava - 18.0 + 32.0.0-jre org.apache.commons commons-collections4 - 4.0 + 4.1 commons-io commons-io - 2.4 + 2.7 com.goldmansachs @@ -64,4 +64,4 @@ 6.2.0 - \ No newline at end of file + diff --git a/helloworlds/1.1-common-frameworks-and-lib/guava-lib/pom.xml b/helloworlds/1.1-common-frameworks-and-lib/guava-lib/pom.xml index 8b33dbdc..d5fb8228 100644 --- a/helloworlds/1.1-common-frameworks-and-lib/guava-lib/pom.xml +++ b/helloworlds/1.1-common-frameworks-and-lib/guava-lib/pom.xml @@ -27,17 +27,17 @@ com.google.guava guava - 18.0 + 29.0-jre org.apache.commons commons-collections4 - 4.0 + 4.1 commons-io commons-io - 2.4 + 2.7 com.goldmansachs @@ -64,4 +64,4 @@ 6.2.0 - \ No newline at end of file + diff --git a/helloworlds/1.1-common-frameworks-and-lib/quasar/pom.xml b/helloworlds/1.1-common-frameworks-and-lib/quasar/pom.xml index c0f456dc..82327663 100644 --- a/helloworlds/1.1-common-frameworks-and-lib/quasar/pom.xml +++ b/helloworlds/1.1-common-frameworks-and-lib/quasar/pom.xml @@ -27,7 +27,7 @@ junit junit - 4.12 + 4.13.1 test diff --git a/helloworlds/1.1-common-frameworks-and-lib/spring/pom.xml b/helloworlds/1.1-common-frameworks-and-lib/spring/pom.xml index a5df8164..a1a7d434 100644 --- a/helloworlds/1.1-common-frameworks-and-lib/spring/pom.xml +++ b/helloworlds/1.1-common-frameworks-and-lib/spring/pom.xml @@ -27,13 +27,13 @@ org.springframework spring-context - 4.2.2.RELEASE + 5.3.19 org.springframework.security spring-security-web - 4.0.3.RELEASE + 5.7.13 diff --git a/helloworlds/1.6-usefull-libraries/collections/apache-commons/pom.xml b/helloworlds/1.6-usefull-libraries/collections/apache-commons/pom.xml index 38c2ffcb..871f4f70 100644 --- a/helloworlds/1.6-usefull-libraries/collections/apache-commons/pom.xml +++ b/helloworlds/1.6-usefull-libraries/collections/apache-commons/pom.xml @@ -27,17 +27,17 @@ com.google.guava guava - 18.0 + 29.0-jre org.apache.commons commons-collections4 - 4.0 + 4.1 commons-io commons-io - 2.4 + 2.7 com.goldmansachs @@ -64,4 +64,4 @@ 6.2.0 - \ No newline at end of file + diff --git a/helloworlds/1.6-usefull-libraries/collections/gs-eclipse/pom.xml b/helloworlds/1.6-usefull-libraries/collections/gs-eclipse/pom.xml index c4064b0a..196871b7 100644 --- a/helloworlds/1.6-usefull-libraries/collections/gs-eclipse/pom.xml +++ b/helloworlds/1.6-usefull-libraries/collections/gs-eclipse/pom.xml @@ -27,17 +27,17 @@ com.google.guava guava - 18.0 + 29.0-jre org.apache.commons commons-collections4 - 4.0 + 4.1 commons-io commons-io - 2.4 + 2.7 com.goldmansachs @@ -64,4 +64,4 @@ 6.2.0 - \ No newline at end of file + diff --git a/helloworlds/1.6-usefull-libraries/collections/guava/pom.xml b/helloworlds/1.6-usefull-libraries/collections/guava/pom.xml index 2a26110c..e68b4903 100644 --- a/helloworlds/1.6-usefull-libraries/collections/guava/pom.xml +++ b/helloworlds/1.6-usefull-libraries/collections/guava/pom.xml @@ -27,17 +27,17 @@ com.google.guava guava - 18.0 + 29.0-jre org.apache.commons commons-collections4 - 4.0 + 4.1 commons-io commons-io - 2.4 + 2.7 com.goldmansachs @@ -64,4 +64,4 @@ 6.2.0 - \ No newline at end of file + diff --git a/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-dagger/pom.xml b/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-dagger/pom.xml index a53a87fb..84d69cc4 100644 --- a/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-dagger/pom.xml +++ b/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-dagger/pom.xml @@ -49,13 +49,13 @@ org.springframework.security spring-security-web - 4.0.3.RELEASE + 5.2.10.RELEASE com.google.guava guava - 18.0 + 29.0-jre @@ -86,4 +86,4 @@ - \ No newline at end of file + diff --git a/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-guice/pom.xml b/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-guice/pom.xml index 69bd71a7..94159c31 100644 --- a/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-guice/pom.xml +++ b/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-guice/pom.xml @@ -33,8 +33,8 @@ com.google.guava guava - 18.0 + 29.0-jre - \ No newline at end of file + diff --git a/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-spring/pom.xml b/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-spring/pom.xml index ed1d7015..c0a976c0 100644 --- a/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-spring/pom.xml +++ b/helloworlds/1.6-usefull-libraries/dependency_injection/dependency-injection-spring/pom.xml @@ -33,7 +33,7 @@ org.springframework.security spring-security-web - 4.0.3.RELEASE + 5.2.10.RELEASE diff --git a/helloworlds/2.8-natural-language-processing/opennlp/pom.xml b/helloworlds/2.8-natural-language-processing/opennlp/pom.xml index 321b98db..0860f9be 100644 --- a/helloworlds/2.8-natural-language-processing/opennlp/pom.xml +++ b/helloworlds/2.8-natural-language-processing/opennlp/pom.xml @@ -1,7 +1,5 @@ - + com.github.vedenin 0.01 @@ -28,7 +26,7 @@ org.apache.opennlp opennlp-tools - 1.6.0 + 1.8.2 org.apache.opennlp @@ -36,4 +34,4 @@ 1.6.0 - + \ No newline at end of file diff --git a/helloworlds/2.8-natural-language-processing/stanford-core-nlp/pom.xml b/helloworlds/2.8-natural-language-processing/stanford-core-nlp/pom.xml index 3d83053d..e3cd0e39 100644 --- a/helloworlds/2.8-natural-language-processing/stanford-core-nlp/pom.xml +++ b/helloworlds/2.8-natural-language-processing/stanford-core-nlp/pom.xml @@ -29,12 +29,12 @@ edu.stanford.nlp stanford-corenlp - 3.6.0 + 4.4.0 edu.stanford.nlp stanford-corenlp - 3.6.0 + 4.4.0 models diff --git a/helloworlds/3.7-web-crawling-and-html-parser/Jsoup/pom.xml b/helloworlds/3.7-web-crawling-and-html-parser/Jsoup/pom.xml index eaa8b992..4162d8ef 100644 --- a/helloworlds/3.7-web-crawling-and-html-parser/Jsoup/pom.xml +++ b/helloworlds/3.7-web-crawling-and-html-parser/Jsoup/pom.xml @@ -27,7 +27,7 @@ org.jsoup jsoup - 1.8.3 + 1.15.3 \ No newline at end of file diff --git a/helloworlds/3.8-json/fastjson/pom.xml b/helloworlds/3.8-json/fastjson/pom.xml index 2582a73c..14600e0d 100644 --- a/helloworlds/3.8-json/fastjson/pom.xml +++ b/helloworlds/3.8-json/fastjson/pom.xml @@ -1,7 +1,7 @@ - + 4.0.0 fastjson Json :: fastjson @@ -12,7 +12,7 @@ com.alibaba fastjson - 1.2.9 + 1.2.83 \ No newline at end of file diff --git a/helloworlds/3.8-json/gson/pom.xml b/helloworlds/3.8-json/gson/pom.xml index 20d5f54b..8ea0cb06 100644 --- a/helloworlds/3.8-json/gson/pom.xml +++ b/helloworlds/3.8-json/gson/pom.xml @@ -26,7 +26,7 @@ com.google.code.gson gson - 2.6.2 + 2.8.9 \ No newline at end of file diff --git a/helloworlds/3.8-json/ig_json_parser/pom.xml b/helloworlds/3.8-json/ig_json_parser/pom.xml index f1abe60a..102fb92a 100644 --- a/helloworlds/3.8-json/ig_json_parser/pom.xml +++ b/helloworlds/3.8-json/ig_json_parser/pom.xml @@ -1,7 +1,7 @@ - + 4.0.0 ig_json_parser Json :: IQ Json Parser diff --git a/helloworlds/3.8-json/jackson/pom.xml b/helloworlds/3.8-json/jackson/pom.xml index 483c1d46..3bf1b7cb 100644 --- a/helloworlds/3.8-json/jackson/pom.xml +++ b/helloworlds/3.8-json/jackson/pom.xml @@ -1,28 +1,23 @@ - + 4.0.0 jackson Json :: jackson com.github.vedenin 0.01 - - - 2.7.3 - - com.fasterxml.jackson.core jackson-core - ${jackson.version} + [2.10.0.pr1,) com.fasterxml.jackson.core jackson-databind - ${jackson.version} + [2.10.0.pr1,) \ No newline at end of file diff --git a/helloworlds/3.8-json/json_schema_validator/pom.xml b/helloworlds/3.8-json/json_schema_validator/pom.xml index ac9a8f51..57612db5 100644 --- a/helloworlds/3.8-json/json_schema_validator/pom.xml +++ b/helloworlds/3.8-json/json_schema_validator/pom.xml @@ -1,28 +1,23 @@ - + 4.0.0 json_schema_validator Json :: Schema Validator com.github.vedenin 0.01 - - - 2.7.3 - - com.fasterxml.jackson.core jackson-core - ${jackson.version} + [2.11.1,) com.fasterxml.jackson.core jackson-databind - ${jackson.version} + [2.11.1,) com.github.fge @@ -30,4 +25,4 @@ 2.2.6 - \ No newline at end of file + diff --git a/helloworlds/3.8-json/jsonschema2pojo/pom.xml b/helloworlds/3.8-json/jsonschema2pojo/pom.xml index 4e06c3a0..f14eabf3 100644 --- a/helloworlds/3.8-json/jsonschema2pojo/pom.xml +++ b/helloworlds/3.8-json/jsonschema2pojo/pom.xml @@ -17,7 +17,7 @@ com.google.guava guava - 18.0 + 29.0-jre @@ -42,4 +42,4 @@ - \ No newline at end of file + diff --git a/helloworlds/3.8-json/logansquare/pom.xml b/helloworlds/3.8-json/logansquare/pom.xml index a4447e64..d5b17e27 100644 --- a/helloworlds/3.8-json/logansquare/pom.xml +++ b/helloworlds/3.8-json/logansquare/pom.xml @@ -1,18 +1,13 @@ - + 4.0.0 logansquare Json :: logansquare com.github.vedenin 0.01 - - - 2.7.3 - - com.bluelinelabs @@ -32,12 +27,12 @@ com.fasterxml.jackson.core jackson-core - ${jackson.version} + [2.10.0.pr1,) com.fasterxml.jackson.core jackson-databind - ${jackson.version} + [2.10.0.pr1,) \ No newline at end of file diff --git a/helloworlds/3.8-json/pom.xml b/helloworlds/3.8-json/pom.xml index 00cf724d..b50ecd1f 100644 --- a/helloworlds/3.8-json/pom.xml +++ b/helloworlds/3.8-json/pom.xml @@ -1,7 +1,7 @@ - + com.github.vedenin 0.01 @@ -17,7 +17,6 @@ json_java jsonschema2pojo moshi - ig_json_parser jackson json_path json_schema_validator diff --git a/helloworlds/4.1-testing/cucumber/pom.xml b/helloworlds/4.1-testing/cucumber/pom.xml index 2bba3f56..acf1ac29 100644 --- a/helloworlds/4.1-testing/cucumber/pom.xml +++ b/helloworlds/4.1-testing/cucumber/pom.xml @@ -10,7 +10,7 @@ 1.7 - 4.12 + 4.13.1 1.2.4 3.3 diff --git a/helloworlds/4.1-testing/image-comparison/pom.xml b/helloworlds/4.1-testing/image-comparison/pom.xml new file mode 100644 index 00000000..1e6707c8 --- /dev/null +++ b/helloworlds/4.1-testing/image-comparison/pom.xml @@ -0,0 +1,44 @@ + + + + 4.1-testing + com.github.vedenin + 0.01 + + 4.0.0 + + image-comparison + + This example to using Image-Comparison for testing code. + + + 3.3 + 3.1.1 + + + + + com.github.romankh3 + image-comparison + ${image.comparison.version} + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + ${maven.compiler.version} + + UTF-8 + ${java.version} + ${java.version} + + + + + + \ No newline at end of file diff --git a/helloworlds/4.1-testing/image-comparison/src/main/java/com/github/vedenin/imagecomparison/Sample.java b/helloworlds/4.1-testing/image-comparison/src/main/java/com/github/vedenin/imagecomparison/Sample.java new file mode 100644 index 00000000..c0a154fc --- /dev/null +++ b/helloworlds/4.1-testing/image-comparison/src/main/java/com/github/vedenin/imagecomparison/Sample.java @@ -0,0 +1,72 @@ +package com.github.vedenin.imagecomparison; + + + +import com.github.romankh3.image.comparison.ImageComparison; +import com.github.romankh3.image.comparison.ImageComparisonUtil; +import com.github.romankh3.image.comparison.model.ComparisonResult; +import com.github.romankh3.image.comparison.model.ComparisonState; + +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.IOException; +import java.net.URISyntaxException; + +/** + * Sample of the using Image-Comparison library. + */ +public class Sample { + + public static void main(String[] args) throws IOException, URISyntaxException { + // load the images to be compared + BufferedImage expectedImage = ImageComparisonUtil.readImageFromResources("expected.png"); + BufferedImage actualImage = ImageComparisonUtil.readImageFromResources("actual.png"); + + // where to save the result (leave null if you want to see the result in the UI) + File resultDestination = new File("result.png"); + + //Create ImageComparison object for it. + ImageComparison imageComparison = new ImageComparison(expectedImage, actualImage, resultDestination); + + //Can be used another constructor for it, without destination. + new ImageComparison("expected.png", "actual.png"); + //or + new ImageComparison(expectedImage, actualImage); + + //Also can be configured BEFORE comparing next properties: + + //Threshold - it's the max distance between non-equal pixels. By default it's 5. + imageComparison.setThreshold(10); + imageComparison.getThreshold(); + + //RectangleListWidth - Width of the line that is drawn in the rectangle. By default it's 1. + imageComparison.setRectangleLineWidth(5); + imageComparison.getRectangleLineWidth(); + + //Destination. Before comparing also can be added destination file for result image. + imageComparison.setDestination(resultDestination); + imageComparison.getDestination(); + + //MaximalRectangleCount - It means that would get first x biggest rectangles for drawing. + // by default all the rectangles would be drawn. + imageComparison.setMaximalRectangleCount(10); + imageComparison.getMaximalRectangleCount(); + + //MinimalRectangleSize - The number of the minimal rectangle size. Count as (width x height). + // by default it's 1. + imageComparison.setMinimalRectangleSize(100); + imageComparison.getMinimalRectangleSize(); + + //After configuring the ImageComparison object, can be executed compare() method: + ComparisonResult comparisonResult = imageComparison.compareImages(); + + //Can be found ComparisonState. + ComparisonState comparisonState = comparisonResult.getComparisonState(); + + //And Result Image + BufferedImage resultImage = comparisonResult.getResult(); + + //Image can be saved after comparison, using ImageComparisonUtil. + ImageComparisonUtil.saveImage(resultDestination, resultImage); + } +} diff --git a/helloworlds/4.1-testing/image-comparison/src/main/resources/actual.png b/helloworlds/4.1-testing/image-comparison/src/main/resources/actual.png new file mode 100644 index 00000000..c6b14aeb Binary files /dev/null and b/helloworlds/4.1-testing/image-comparison/src/main/resources/actual.png differ diff --git a/helloworlds/4.1-testing/image-comparison/src/main/resources/expected.png b/helloworlds/4.1-testing/image-comparison/src/main/resources/expected.png new file mode 100644 index 00000000..8c97865c Binary files /dev/null and b/helloworlds/4.1-testing/image-comparison/src/main/resources/expected.png differ diff --git a/helloworlds/4.1-testing/mockito/pom.xml b/helloworlds/4.1-testing/mockito/pom.xml index a267e5c5..a88da97a 100644 --- a/helloworlds/4.1-testing/mockito/pom.xml +++ b/helloworlds/4.1-testing/mockito/pom.xml @@ -15,7 +15,7 @@ 1.7 - 4.12 + 4.13.1 3.3 1.9.5 diff --git a/helloworlds/4.1-testing/pom.xml b/helloworlds/4.1-testing/pom.xml index 99d5376c..c49d65c7 100644 --- a/helloworlds/4.1-testing/pom.xml +++ b/helloworlds/4.1-testing/pom.xml @@ -14,5 +14,6 @@ cucumber mockito + image-comparison \ No newline at end of file diff --git a/helloworlds/5.0-other-examples/pom.xml b/helloworlds/5.0-other-examples/pom.xml index 172c4d71..e052c59e 100644 --- a/helloworlds/5.0-other-examples/pom.xml +++ b/helloworlds/5.0-other-examples/pom.xml @@ -53,17 +53,17 @@ com.google.guava guava - 18.0 + 29.0-jre org.apache.commons commons-collections4 - 4.0 + 4.1 commons-io commons-io - 2.4 + 2.7 org.apache.commons diff --git a/helloworlds/contributing.md b/helloworlds/contributing.md index 3574f08d..9fb0d7f0 100644 --- a/helloworlds/contributing.md +++ b/helloworlds/contributing.md @@ -5,3 +5,21 @@ You can see [json sections](https://github.com/Vedenin/useful-java-links/tree/ma Ideally, if you examples can be build using only maven, and running using only Idea Community or Eclipse. Thank you for any your suggestions! + + import java.lang.*; +public class Calulator { + double i; + double x; + void p(){ + x = Math.sqrt(i); + } +} +class Demonstration_81{ + public static void main(String[] args){ + Calulator a = new Calulator(); + a.i = 20.0; + a.p(); + System.out.println("Square root of"+a.i+" is "+a.x); + + } +} diff --git a/link-rus/readme.md b/link-rus/readme.md index d721cadb..85154f2f 100644 --- a/link-rus/readme.md +++ b/link-rus/readme.md @@ -320,7 +320,7 @@ 1. [Keycloak](http://keycloak.jboss.org/) - Интеграция с SSO и IDM, как для приложений, работающих в браузере, так и для RESTful веб сервисов. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [PicketLink](http://picketlink.org/) - Umbrella проект для обеспечения безопасности и индентификации пользователей, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Santuario](http://santuario.apache.org) Библиотека реализующая XML Digital Signature спецификацию и XML Encryption спецификацию. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -1. [Apache Oltu](https://oltu.apache.org/) Реализация OAuth протокола для Java. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) +1. [Apache Oltu](https://oltu.apache.org/) ( *больше не поддерживается* ) Реализация OAuth протокола для Java. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache Syncope](http://syncope.apache.org) Apache Syncope это открытая система для управления цифровыми идентификторами в enterprise приложениях. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) #### Высокая производительность @@ -476,6 +476,7 @@ 1. [Apache Derby](https://db.apache.org/derby/) - Apache Derby, это Apache DB подпроект, это open source реляционная база данных, реализованная полностью на . Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache Empire-db](http://empire-db.apache.org/) Apache Empire-db is a lightweight relational database abstraction layer and data persistence component. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Apache Ignite](http://ignite.apache.org) Apache Ignite is an In-Memory Data Fabric providing in-memory data caching, partitioning, processing, and querying components. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) +1. [Tarantool](https://github.com/tarantool/tarantool) — открытая система управления базой данных с неблокирующим сервером приложений на Lua. База данных обладает высокой скоростью работы по сравнению с традиционными СУБД, обладая теми же свойствами: персистентности, транзакционности ACID, репликации master-slave, master-master. Лицензия: [BSD licenses](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_BSD). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) *Распределенные базы данных.* @@ -542,6 +543,7 @@ 1. [LightAdmin](http://lightadmin.org/) - Легко настраиваемя CRUD UI библиотека для быстрой разработки приложений, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Можно использовать в коммерческом закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Jaybird JCA/JDBC driver](http://www.firebirdsql.org/en/jdbc-driver/) - JCA-JDBC драйвер для Firebird базы данных, [github](https://github.com/FirebirdSQL/jaybird), github's star - 19. Лицензия: [GNU Lesser 2.1](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License), ![Можно использовать в коммерческом закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [dbeaver](https://github.com/serge-rider/dbeaver) - Инструмент для доступа к базе данных для разработчиков, SQL программистов, администраторов баз данных и аналитиков . http://dbeaver.jkiss.org. , github's star - 473. Лицензия: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License). ![Не соместимая с закрытым ПО лицензия](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/non-proprietary.png?raw=true) +1. [tarantool-java](https://github.com/tarantool/tarantool-java) Коннектор для работы по бинарному протоколу с Tarantool. Лицензия: [BSD licenses](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_BSD). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) ### 5. Маппинг объектов в базы данных (ORM и т. п.) @@ -942,6 +944,7 @@ 1. [Mockito](https://github.com/mockito/mockito) Mocking фреймворк для unit тестов, написанных на Java. Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT) , рейтинг github'а - 1307. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Selenium](https://github.com/SeleniumHQ/selenium) Фреймворк для автоматического тестирования в браузере . Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 1305. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Cucumber jvm](https://github.com/cucumber/cucumber-jvm) Портирование Cucumber фреймворка для JVM. Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT) , рейтинг github'а - 1047. ![Можно использовать в коммерческом закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) +1. [JBehave](https://github.com/jbehave/jbehave-core) BDD фреймворк, обладающий широкими возможностями по конфигурации. BDD является эволюцией подходов к разработке через тестирование (англ. test-driven development, TDD) и через приемочное тестирование (англ. acceptance-test driven design, ATDD), а также предназначен для того, чтобы сделать эти практики более доступными и интуитивно понятными в одинаковой степени новичкам и экспертам. Лицензия: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29), рейтинг github'а - 208. ![Можно использовать в коммерческом закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Spock](https://github.com/spockframework/spock) Spock это фреймворк тестирования и создания спецификаций для Java и Groovy приложений . Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 669. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Google Firing range](https://github.com/google/firing-range) Google Firing Range это тестовый вебсервер для приложений-сканеров уязвимостей вебсайтов. Firing Range создает широкий спектр синтетических уязвимостей. Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache) , рейтинг github'а - 650. ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Fitnesse](https://github.com/unclebob/fitnesse) FitNesse это система тестирования, вебсервер и вики. Лицензия: [CPL-1.0](https://opensource.org/licenses/cpl1.0.php), рейтинг github'а - 618. @@ -956,7 +959,6 @@ 1. [Arquillian](http://arquillian.org/) - Интеграционная и функциональная платформа тестирования Java EE контейнеров, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Awaitility](https://github.com/jayway/awaitility) - DSL для синхронизации ассинхроных операций, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Citrus](http://citrusframework.org/) - Фреймворк интеграционного тестирования, которой фокусируется на тестировании клиент-серверного обмена сообщениями, Лицензия: [Apache 2](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_Apache). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) -1. [Cucumber](https://github.com/cucumber/cucumber-jvm) - BDD фреймворк тестирования. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/4.1-testing/cucumber). Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [Gatling](http://gatling.io/) - Содержит инструменты тестирования разработанные для легкого использования, легкого сопровождения и высокой производительности, Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [GreenMail](http://www.icegreen.com/greenmail/) - In-memory email сервер для интеграционного тестирования, поддерживает SMTP, POP3 и IMAP включая SSL, Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) 1. [JGiven](http://jgiven.org) - Удобный для разработчиков BDD фреймворк тестирования совместимый с JUnit и TestNG, Лицензия: [MIT](https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F_MIT). ![Лицензия совместима с закрытым ПО](https://github.com/Vedenin/useful-java-links/blob/master/link-rus/img/good-proprietary.png?raw=true) diff --git a/link-rus/video-links.md b/link-rus/video-links.md index 2c177b75..55cd8857 100644 --- a/link-rus/video-links.md +++ b/link-rus/video-links.md @@ -35,6 +35,7 @@ - [6.8 Рефлексия и Invokedynamic](#68-Рефлексия-и-invokedynamic) - [6.9 Работа с нативными библиотеками и кодом (JNI/JNA)](#69-Работа-с-нативными-библиотеками-и-кодом-jnijna) - [6.10 Особенности языка Java](#610-Особенности-языка-java) + - [6.11 Реактивное программирование на Java](#611-Реактивное-программирование-на-java) - [7. Качество кода и вопросы архитектуры](#7-Качество-кода-и-вопросы-архитектуры) - [7.1 Рефакторинги, качество кода, методики программирования](#71-Рефакторинги-качество-кода-методики-программирования) - [7.2 Архитектура, бизнес правила, бизнес модель и примеры приложений](#72-Архитектура-бизнес-правила-бизнес-модель-и-примеры-приложений) @@ -378,6 +379,12 @@ 2. [Алексей Рагозин — Структуры данных в Java, изобретаем заново](https://www.youtube.com/watch?v=mLqjySOrjOw) - описание реализации коллекций в Java и возможные методы их улучшения, 3. [Светлана Исакова — Простыми словами про вывод типов](https://www.youtube.com/watch?v=8K6sNWvqrW8) +### 6.11 Реактивное программирование на Java + +1. [Кирилл Толкачёв и Егений Борисов — Reactive или не reactive, вот в чем вопрос](https://www.youtube.com/watch?v=mX19FWX2_Hs) - рефакторинг системы в реактивном стиле, +2. [Олег Докука — Протокол RSocket — будущее реактивных приложений](https://www.youtube.com/watch?v=tSVjUKZ8Eg8) - обзор RSocket — новаторское решение для межсервисных взаимодействий, +3. [Сергей Егоров — Не будь Гомером Симпсоном для своего Reactor-а!](https://www.youtube.com/watch?v=MU4wjB5CE-c) - обзор фреймворка Project Reactor + ## **7\. Качество кода и вопросы архитектуры** ### 7.1 Рефакторинги, качество кода, методики программирования @@ -390,6 +397,7 @@ 6. [Николай Алименков — Парадигмы ООП](https://www.youtube.com/watch?v=G6LJkWwZGuc) 7. [Михаил Ершов — Разработка совместимого API](https://www.youtube.com/watch?v=EgOZSr-Uc3w) 8. [Nikolay Chashnikov - Write code faster with fewer errors: is it possible?](https://www.youtube.com/watch?v=_VhIBu8_4TE&list=PLYj3Bx1JM6Y6KJyi0TL3BJLRzgZJ4cWmL&index=57) - как избегать ошибок при написании кода, +9. [Тагир Валеев — Атомарный рефакторинг в IntelliJ IDEA: прогибаем IDE под себя](https://www.youtube.com/watch?v=C5eD-K8AO3o) ### 7.2 Архитектура, бизнес правила, бизнес модель и примеры приложений diff --git a/readme.md b/readme.md index 8054f440..08412fb5 100644 --- a/readme.md +++ b/readme.md @@ -10,7 +10,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n - [3. GUI](#3-gui) - [4. Business](#4-business) - [5. Game Development](#5-game-development) - - [6. Usefull libraries](#6-usefull-libraries) + - [6. Useful libraries](#6-useful-libraries) - [Collections](#collections) - [Date and Time](#date-and-time) - [Dependency Injection and AOP](#dependency-injection-and-aop-frameworks) @@ -81,13 +81,13 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n - [7. Documentation](#7-documentation) - [8. Other](#8-other) -- [VI. Program languages and applications, that was written with Java](#vi-program-languages-and-applications-that-was-written-with-java) - - [1. Program languages, that was written with Java](#1--program-languages-that-was-written-with-java) - - [2. Other program languages tools, that was written with Java](#2-other-program-languages-tools-that-was-written-with-java) +- [VI. Program languages and applications that were written with Java](#vi-program-languages-and-applications-that-was-written-with-java) + - [1. Program languages that were written with Java](#1--program-languages-that-was-written-with-java) + - [2. Other program languages tools that were written with Java](#2-other-program-languages-tools-that-was-written-with-java) - [3. Javascript](#3-javascript) - [4. Frameworks that help to create parsers, interpreters or compilers](#4-frameworks-that-help-to-create-parsers-interpreters-or-compilers) - - [5. Opensource applications, that was written with Java](#5-opensource-applications-that-was-written-with-java) - - [6. Opensource games, that was written with Java](#6-opensource-games-that-was-written-with-java) + - [5. Opensource applications that were written with Java](#5-opensource-applications-that-was-written-with-java) + - [6. Opensource games that were written with Java](#6-opensource-games-that-was-written-with-java) - [VII. Other](#vii-other) - [1. Source code examples](#1-source-code-examples) @@ -119,6 +119,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Kilim](https://github.com/kilim/kilim) Lightweight threads for Java, with message passing, nio, http and scheduling support. License: [MIT](https://opensource.org/licenses/MIT) , [![GitHub stars](https://img.shields.io/github/stars/kilim/kilim.svg?style=social&label=Star&maxAge=2592000)](https://github.com/kilim/kilim). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Isis](http://isis.apache.org) Apache Isis is a framework for rapidly developing domain-driven apps in Java. Write your business logic in entities, domain services and repositories, and the framework dynamically (at runtime) generates a representation of that domain model as a webapp or as a RESTful API. For prototyping or production. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Zest](https://zest.apache.org/) Apache Zest is a community based effort exploring Composite Oriented Programming for domain centric application development. This includes evolved concepts from Aspect Oriented Programming, Dependency Injection and Domain Driven Design. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Embedchain-JS](https://github.com/embedchain/embedchainjs) Framework to easily create LLM powered bots over any dataset. [![GitHub stars](https://img.shields.io/github/stars/embedchain/embedchainjs.svg?style=social)](https://github.com/embedchain/embedchainjs) ### 2. Web development [Up](#useful-java-links) @@ -126,7 +127,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n #### Web Frameworks 1. [Play Framework](https://github.com/playframework/playframework) 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](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/playframework/playframework.svg?style=social&label=Star&maxAge=2592000)](https://github.com/playframework/playframework). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Spark](https://github.com/perwendel/spark) Spark - a Sinatra inspired web framework. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/perwendel/spark.svg?style=social&label=Star&maxAge=2592000)](https://github.com/perwendel/spark). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Blade](https://github.com/biezhi/blade) a simple, elegant java web framework! http://bladejava.com. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/biezhi/blade.svg?style=social&label=Star&maxAge=2592000)](https://github.com/biezhi/blade). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Blade](https://github.com/biezhi/blade) a simple, elegant java web framework! License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/biezhi/blade.svg?style=social&label=Star&maxAge=2592000)](https://github.com/biezhi/blade). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Atmosphere](https://github.com/Atmosphere/atmosphere) - Realtime Client Server Framework for the JVM, supporting WebSockets with Cross-Browser Fallbacks. License: CDDL1 / [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/Atmosphere/atmosphere.svg?style=social&label=Star&maxAge=2592000)](https://github.com/Atmosphere/atmosphere). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Grails](https://github.com/grails/grails-core) - 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](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/grails/grails-core.svg?style=social&label=Star&maxAge=2592000)](https://github.com/grails/grails-core). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Ninja](https://github.com/ninjaframework/ninja) Ninja is a full stack web framework for Java. Rock solid, fast and super productive. .http://www.ninjaframework.org. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/ninjaframework/ninja.svg?style=social&label=Star&maxAge=2592000)](https://github.com/ninjaframework/ninja). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -151,12 +152,13 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [VRaptor](https://github.com/caelum/vraptor4) VRaptor 4 delivers high productivity to your Java Web applications on top of CDI. VRaptor is an opensource MVC framework with a large developers and users community, [![GitHub stars](https://img.shields.io/github/stars/caelum/vraptor4.svg?style=social&label=Star&maxAge=2592000)](https://github.com/caelum/vraptor4). http://www.vraptor.org . License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Jooby](https://github.com/jooby-project/jooby) Scalable, fast and modular micro web framework for Java , [![GitHub stars](https://img.shields.io/github/stars/jooby-project/jooby.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cjooby-project/jooby). http://jooby.org/ . License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [CUBA Platform](https://github.com/cuba-platform/cuba) - High-level framework for developing enterprise applications with a rich web interface, based on Spring, EclipseLink and Vaadin. https://cuba-platform.com [![GitHub stars](https://img.shields.io/github/stars/cuba-platform/cuba.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cuba-platform/cuba). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Jersey](https://jersey.github.io/) - Jersey RESTful Web Services framework is open source, production quality, framework for developing RESTful Web Services in Java that provides support for JAX-RS APIs and serves as a JAX-RS (JSR 311 & JSR 339) Reference Implementation. #### Libraries for web development 1. [Tobie ua-parser](https://github.com/tobie/ua-parser) A multi-language port of Browserscope's user agent parser. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0)/[MIT](https://opensource.org/licenses/MIT)/Perl, [![GitHub stars](https://img.shields.io/github/stars/tobie/ua-parser.svg?style=social&label=Star&maxAge=2592000)](https://github.com/tobie/ua-parser). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Ghost Driver](https://github.com/detro/ghostdriver) Ghost Driver is an implementation of the Remote WebDriver Wire protocol, using PhantomJS as back-end. License: [BSD 2](https://en.wikipedia.org/wiki/BSD_licenses#2-clause_license_.28.22Simplified_BSD_License.22_or_.22FreeBSD_License.22.29), [![GitHub stars](https://img.shields.io/github/stars/detro/ghostdriver.svg?style=social&label=Star&maxAge=2592000)](https://github.com/detro/ghostdriver). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [B3log Solo](https://github.com/b3log/solo) - A blogging system written in Java, feel free to create your or your team own blog. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/b3log/solo.svg?style=social&label=Star&maxAge=2592000)](https://github.com/b3log/solo). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Nasher](https://github.com/ghaseminya/nasher-mvc-spring-security-blog-angular) - A Spring Project with spring security support with angular admin panel. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars] +1. [Nasher](https://github.com/ghaseminya/nasher-mvc-spring-security-blog-angular) - A Spring Project with spring security support with angular admin panel. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/ghaseminya/nasher-mvc-spring-security-blog-angular.svg?style=social&label=Star&maxAge=2592000)](https://github.com/ghaseminya/nasher-mvc-spring-security-blog-angular). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Baasbox](https://github.com/baasbox/baasbox) BaasBox is an Open Source project that aims to provide a backend for mobile and web apps. License: ?, [![GitHub stars](https://img.shields.io/github/stars/baasbox/baasbox.svg?style=social&label=Star&maxAge=2592000)](https://github.com/baasbox/baasbox). 1. [Kolorobot Spring MVC 4 Quickstart Maven Archetype](https://github.com/kolorobot/spring-mvc-quickstart-archetype) — The project is a Maven archetype for Spring MVC 4 web application. License: ?, [![GitHub stars](https://img.shields.io/github/stars/kolorobot/spring-mvc-quickstart-archetype.svg?style=social&label=Star&maxAge=2592000)](https://github.com/kolorobot/spring-mvc-quickstart-archetype). 1. [Gargl](https://github.com/jodoglevy/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](https://opensource.org/licenses/MIT) , [![GitHub stars](https://img.shields.io/github/stars/jodoglevy/gargl.svg?style=social&label=Star&maxAge=2592000)](https://github.com/jodoglevy/gargl). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -186,16 +188,18 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Apache Portals](http://portals.apache.org) The Apache Portals project provides various software products, including Apache Jetspeed-2, Apache Pluto, and Apache Portals Applications. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Roller](http://roller.apache.org/) Apache Roller is a full-featured, multi-user and group blog server suitable for blog sites large and small. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Chemistry](http://chemistry.apache.org/) Apache Chemistry provides open source implementations of the Content Management Interoperability Services (CMIS) specification. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Jease](http://jease.org/) Jease eases the development of content- & database-driven web-applications with Java. License: [GPL v3](https://www.gnu.org/licenses/gpl-3.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) ### 3. GUI 1. [JavaFX](http://www.oracle.com/technetwork/java/javase/overview/javafx-overview-2158620.html) - 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](http://www.oracle.com/technetwork/java/javase/terms/license/index.html). ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [Scene Builder](http://www.oracle.com/technetwork/java/javase/downloads/javafxscenebuilder-info-2157684.html) - 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](http://www.oracle.com/technetwork/java/javase/terms/license/index.html). ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true), but see Gluon Scene Builder. -1. [Gluon Scene Builder] - Scene Builder is free and open source JavaFX Scene Builder, but is backed by Gluon. Commercial support offerings are available, including training and custom consultancy services. License: [BSD](https://www.google.pl/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&cad=rja&uact=8&ved=0ahUKEwjE5vqD-Y3MAhVH2ywKHe5BBXgQFggkMAI&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FBSD_licenses&usg=AFQjCNEADwPS776rXl5O9ofavy4xaW2yYw&sig2=FypX35BAWf3icOci5pQd3w&bvm=bv.119408272,d.bGg). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [SWT](http://www.eclipse.org/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](https://en.wikipedia.org/wiki/Eclipse_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Gluon Scene Builder](https://bitbucket.org/gluon-oss/scenebuilder) - Scene Builder is free and open source JavaFX Scene Builder, but is backed by Gluon. Commercial support offerings are available, including training and custom consultancy services. License: [BSD](https://www.google.pl/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&cad=rja&uact=8&ved=0ahUKEwjE5vqD-Y3MAhVH2ywKHe5BBXgQFggkMAI&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FBSD_licenses&usg=AFQjCNEADwPS776rXl5O9ofavy4xaW2yYw&sig2=FypX35BAWf3icOci5pQd3w&bvm=bv.119408272,d.bGg). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [SWT](http://www.eclipse.org/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](https://en.wikipedia.org/wiki/Eclipse_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Lanterna](https://code.google.com/archive/p/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](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Gephi](https://github.com/gephi/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](https://en.wikipedia.org/wiki/GNU_General_Public_License) or [CDDL 1.0](http://opensource.org/licenses/CDDL-1.0). +1. [Codename One](https://www.codenameone.com/) - Open-source cross-platform app development solution for writing native apps for desktop, web & mobile in Java/Kotlin. (GPL + Classpath Exception) ### 4. Business [Up](#useful-java-links) @@ -277,7 +281,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n *Libraries that facilitate functional programming.* 1. [Retrolambda](https://github.com/orfjackal/retrolambda) Backport of Java 8's lambda expressions to Java 7, 6 and 5. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/orfjackal/retrolambda.svg?style=social&label=Star&maxAge=2592000)](https://github.com/orfjackal/retrolambda). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Javaslang](https://github.com/javaslang/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, [![GitHub stars](https://img.shields.io/github/stars/javaslang/javaslang.svg?style=social&label=Star&maxAge=2592000)](https://github.com/javaslang/javaslang). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Vavr](https://github.com/vavr-io/vavr) - Vavr (formerly called Javaslang) 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. Vavr provides immutable collections and the necessary functions and control structures to operate on these values, [![GitHub stars](https://img.shields.io/github/stars/vavr-io/vavr.svg?style=social&label=Star&maxAge=2592000)](https://github.com/vavr-io/vavr). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [jOOλ](https://github.com/jOOQ/jOOL) - 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, [![GitHub stars](https://img.shields.io/github/stars/jOOQ/jOOL.svg?style=social&label=Star&maxAge=2592000)](https://github.com/jOOQ/jOOL). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Functional Java](https://github.com/functionaljava/functionaljava) - 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. http://www.functionaljava.org License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29), [![GitHub stars](https://img.shields.io/github/stars/functionaljava/functionaljava.svg?style=social&label=Star&maxAge=2592000)](https://github.com/functionaljava/functionaljava). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Cyclops react](https://github.com/aol/cyclops-react) - A comprehensive functional reactive platform for JDK8. Future & functional based programming via JDK compatible extensions for Java 8 and above, [![GitHub stars](https://img.shields.io/github/stars/aol/cyclops-react.svg?style=social&label=Star&maxAge=2592000)](https://github.com/aol/cyclops-react). License: [MIT](https://opensource.org/licenses/MIT) ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -290,14 +294,16 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [ReactiveX RxJava](https://github.com/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](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/ReactiveX/RxJava.svg?style=social&label=Star&maxAge=2592000)](https://github.com/ReactiveX/RxJava), stackoverflow - [1814 questions](http://stackoverflow.com/search?q=RxJava). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Eclipse Vert.x](https://github.com/eclipse/vert.x) Vert.x is a tool-kit for building reactive applications on the JVM . License:  Eclipse Public 1 / [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/eclipse/vert.x.svg?style=social&label=Star&maxAge=2592000)](https://github.com/eclipse/vert.x), stackoverflow - [728 questions](http://stackoverflow.com/search?q=Vert.x). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Reactive Streams](https://github.com/reactive-streams/reactive-streams-jvm/) - The purpose of Reactive Streams is to provide a standard for asynchronous stream processing with non-blocking backpressure. License: [Public Domain (CC0)](https://en.wikipedia.org/wiki/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D0%B8_%D0%B8_%D0%B8%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D1%8B_Creative_Commons#CC0), [![GitHub stars](https://img.shields.io/github/stars/reactive-streams/reactive-streams-jvm.svg?style=social&label=Star&maxAge=2592000)](https://github.com/reactive-streams/reactive-streams-jvm/). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Reactive Streams](https://github.com/reactive-streams/reactive-streams-jvm/) - The purpose of Reactive Streams is to provide a standard for asynchronous stream processing with non-blocking backpressure. License: [Public Domain (CC0)](http://creativecommons.org/publicdomain/zero/1.0/), [![GitHub stars](https://img.shields.io/github/stars/reactive-streams/reactive-streams-jvm.svg?style=social&label=Star&maxAge=2592000)](https://github.com/reactive-streams/reactive-streams-jvm/). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Reactor](http://projectreactor.io/) - Reactor is a second-generation Reactive library for building non-blocking applications on the JVM based on the Reactive Streams Specification. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [RSocket](http://rsocket.io) - RSocket is a binary protocol for use on byte stream transports such as TCP, WebSockets, and Aeron. License: [Apache 2](https://github.com/rsocket/rsocket/blob/master/LICENSE),[![GitHub stars](https://img.shields.io/github/stars/rsocket/rsocket?style=social)](https://github.com/rsocket/rsocket) ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) #### Security and Authentication *Libraries that handle security, authentication, authorization or session management.* [Up](#useful-java-links) +1. [OTP-Java](https://github.com/BastiaanJansen/OTP-Java) - A small one-time password generator library according to RFC 4226 (HOTP) and RFC 6238 (TOTP). [MIT](https://opensource.org/licenses/MIT) 1. [Scribe Java](https://github.com/scribejava/scribejava) - Simple OAuth library for Java. License: [MIT](https://opensource.org/licenses/MIT) , [![GitHub stars](https://img.shields.io/github/stars/scribejava/scribejava.svg?style=social&label=Star&maxAge=2592000)](https://github.com/scribejava/scribejava). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Spring security oauth](https://github.com/spring-projects/spring-security-oauth) - Support for adding OAuth1(a) and OAuth2 features (consumer and provider) for Spring web applications. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/spring-projects/spring-security-oauth.svg?style=social&label=Star&maxAge=2592000)](https://github.com/spring-projects/spring-security-oauth). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Jasig CAS (Central Authentication Service)](https://github.com/Jasig/cas) - 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](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/Jasig/cas.svg?style=social&label=Star&maxAge=2592000)](https://github.com/Jasig/cas). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -310,9 +316,10 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Keycloak](http://keycloak.jboss.org/) - 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](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [PicketLink](http://picketlink.org/) - 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](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Santuario](http://santuario.apache.org) Library implementing XML Digital Signature Specification & XML Encryption Specification. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Apache Oltu](https://oltu.apache.org/) Apache Oltu is an OAuth protocol implementation in Java. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Apache Oltu](https://oltu.apache.org/) ( *has retired* ) Apache Oltu is an OAuth protocol implementation in Java. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Syncope](http://syncope.apache.org) Apache Syncope is an Open Source system for managing digital identities in enterprise environments. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) - +1. [JObfuscator](https://www.pelock.com/products/jobfuscator) - JObfuscator is a source code obfuscator for the Java language to protect Java source code & algorithms from hacking, cracking, reverse engineering, decompilation & technology theft. License: ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [OpenAM](https://www.pelock.com/products/jobfuscator) - Access management solution that includes authentication, SSO, authorization, federation, entitlements and web services security. License: [CDDL](https://opensource.org/license/cddl-1-0), [![GitHub stars](https://img.shields.io/github/stars/OpenIdentityPlatform/OpenAM.svg?style=social&label=Star&maxAge=2592000)](https://github.com/OpenIdentityPlatform/OpenAM). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) #### High Performance *Everything about high performance computation, from collections to specific libraries.* @@ -327,6 +334,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [JCTools](https://github.com/JCTools/JCTools) - Concurrency tools currently missing from the JDK. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Koloboke](https://github.com/OpenHFT/Koloboke) - Hash sets and hash maps. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Trove](http://trove.starlight-systems.com/) - Primitive collections. License: [GNU Lesser 2.1](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [JUnion](https://github.com/TehLeo/junion) - Delivers struct types for Java programming language. 64 bit addressable struct arrays. [https://tehleo.github.io/junion/](https://tehleo.github.io/junion/) License: [License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) #### Serialization and I/O @@ -367,6 +375,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Orika](https://github.com/orika-mapper/orika) - Simpler, better and faster Java bean mapping framework. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/1.6-usefull-libraries/bean_mapping/orika). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0), [![GitHub stars](https://img.shields.io/github/stars/orika-mapper/orika.svg?style=social&label=Star&maxAge=2592000)](https://github.com/orika-mapper/orika). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Selma](https://github.com/xebia-france/selma) - Stupid Simple Statically Linked Mapper. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/1.6-usefull-libraries/bean_mapping/selma). Selma Java bean mapping that compiles. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0), [![GitHub stars](https://img.shields.io/github/stars/xebia-france/selma.svg?style=social&label=Star&maxAge=2592000)](https://github.com/xebia-france/selma). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache BVal](http://bval.apache.org/) Apache BVal delivers an implementation of the Java Bean Validation (JSR303) Specification which is TCK compliant, works on Java SE 5 or later. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [OVal](http://oval.sourceforge.net/) – is a pragmatic and extensible validation framework for any kind of Java objects. Not JSR303/JSR380 compliant but supports Bean Validation constraints. It's pretty old flexible and reliable. License: [EPL v2.0](https://www.eclipse.org/legal/epl-2.0). [![GitHub stars](https://img.shields.io/github/stars/sebthom/oval.svg?style=social&label=Star&maxAge=2592000)](https://github.com/sebthom/oval) ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -394,7 +403,6 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Byteman](http://byteman.jboss.org/) - 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](http://www.gnu.org/licenses/old-licenses/lgpl-2.1.ru.html). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Javassist](http://jboss-javassist.github.io/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](http://www.apache.org/licenses/LICENSE-2.0) or [LGPL or later 2.1](http://www.gnu.org/licenses/old-licenses/lgpl-2.1.ru.html) or [Mozilla Public License 1.1.](https://en.wikipedia.org/wiki/Mozilla_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [ADT4J](https://github.com/sviperll/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](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Auto](https://github.com/google/auto) - A collection of source code generators for Java. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [JHipster](https://github.com/jhipster/generator-jhipster) - Hipster stack for Java developers. Spring Boot + AngularJS in one handy generator. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [cglib](https://github.com/cglib/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](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -412,8 +420,8 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Hazelcast](http://hazelcast.org/) - The Leading Open Source In-Memory Data Grid: Distributed Computing, Simplified. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Netflix Hystrix](https://github.com/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 stars](https://img.shields.io/github/stars/Netflix/Hystrix.svg?style=social&label=Star&maxAge=2592000)](https://github.com/Netflix/Hystrix). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [JGroups](http://www.jgroups.org/) - 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](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Orbit](http://orbit.bioware.com/) - 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](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Quasar](http://www.paralleluniverse.co/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](https://en.wikipedia.org/wiki/Eclipse_Public_License) or [LGPL 3.0](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Orbit](https://github.com/orbit-legacy/orbit1) - 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](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Quasar](https://docs.paralleluniverse.co/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](https://en.wikipedia.org/wiki/Eclipse_Public_License) or [LGPL 3.0](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Storm contrib](https://github.com/nathanmarz/storm-contrib) A collection of spouts, bolts, serializers, DSLs, and other goodies to use with Storm. License: [Eclipse Public 1.0](https://www.eclipse.org/legal/epl-v10.html), [![GitHub stars](https://img.shields.io/github/stars/nathanmarz/storm-contrib.svg?style=social&label=Star&maxAge=2592000)](https://github.com/nathanmarz/storm-contrib). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [JADE](http://jade.tilab.com/) - 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](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache River](http://river.apache.org) Apache River software provides a standards-compilani JINI service. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -473,6 +481,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [Apache Derby](https://db.apache.org/derby/) - Apache Derby, an Apache DB subproject, is an open source relational database implemented entirely in Java. Derby provides an embedded JDBC driver that lets you embed Derby in any Java-based solution. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Empire-db](http://empire-db.apache.org/) Apache Empire-db is a lightweight relational database abstraction layer and data persistence component. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Ignite](http://ignite.apache.org) Apache Ignite is an In-Memory Data Fabric providing in-memory data caching, partitioning, processing, and querying components. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Tarantool](https://github.com/tarantool/tarantool) — is an open-source NoSQL database management system and Lua application server. It maintains databases in memory and ensures crash resistance with write-ahead logging. It includes a Lua interpreter and interactive console but also accepts connections from programs in several other languages. License: [BSD licenses](https://en.wikipedia.org/wiki/BSD_licenses). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) #### **Distributed Databases.** *Databases in a distributed system that appear to applications as a single data source.* @@ -538,6 +547,7 @@ This is a fork of [awesome link](https://github.com/akullpp/awesome-java) with n 1. [LightAdmin](http://lightadmin.org/) - Pluggable data administration UI library for Java web applications. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Jaybird JCA/JDBC driver](https://github.com/FirebirdSQL/jaybird) - JCA-JDBC Driver for Firebird database. http://www.firebirdsql.org/en/jdbc-driver/, [![GitHub stars](https://img.shields.io/github/stars/FirebirdSQL/jaybird.svg?style=social&label=Star&maxAge=2592000)](https://github.com/FirebirdSQL/jaybird). License: [GNU Lesser 2.1](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [dbeaver](https://github.com/serge-rider/dbeaver) - Free universal database manager and SQL client. http://dbeaver.jkiss.org. , [![GitHub stars](https://img.shields.io/github/stars/serge-rider/dbeaver.svg?style=social&label=Star&maxAge=2592000)](https://github.com/serge-rider/dbeaver). License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) +1. [tarantool-java](https://github.com/tarantool/tarantool-java) A Java client for Tarantool. License: [BSD licenses](https://en.wikipedia.org/wiki/BSD_licenses). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) ### 5. ORM *APIs which handle the persistence of objects.* @@ -699,6 +709,7 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach 1. [Apache Tika](http://tika.apache.org) The Apache Tika toolkit detects and extracts metadata and structured text content from various documents using existing parser libraries. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [CMU Sphinx](http://cmusphinx.sourceforge.net/) - Open Source Speech Recognition Toolkit. License: [BSD 2](https://en.wikipedia.org/wiki/BSD_licenses#2-clause_license_.28.22Simplified_BSD_License.22_or_.22FreeBSD_License.22.29). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [ARK Twitter NLP](https://github.com/brendano/ark-tweet-nlp) - CMU ARK Twitter Part-of-Speech Tagger. http://www.ark.cs.cmu.edu/TweetNLP/ License: [GNU 2/3](https://en.wikipedia.org/wiki/GNU_General_Public_License), [![GitHub stars](https://img.shields.io/github/stars/brendano/ark-tweet-nlp.svg?style=social&label=Star&maxAge=2592000)](https://github.com/brendano/ark-tweet-nlp). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) +1. [lc4j](https://github.com/olivomarco/lc4j) - Language Categorization for Java: an Open Source library for finding out in which language a text has been written. License: [MIT](https://en.wikipedia.org/wiki/MIT_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) ## III. Network and Integration @@ -707,16 +718,16 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach [Up](#useful-java-links) 1. [Wildfly](https://github.com/wildfly/wildfly) - Formerly known as JBoss and developed by Red Hat with extensive Java EE support. License: [GNU Lesser 2.1](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License), [![GitHub stars](https://img.shields.io/github/stars/wildfly/wildfly.svg?style=social&label=Star&maxAge=2592000)](https://github.com/wildfly/wildfly). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Undertow io Undertow](https://github.com/undertow-io/undertow) - High performance non-blocking webserver. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/undertow-io/undertow.svg?style=social&label=Star&maxAge=2592000)](https://github.com/undertow-io/undertow). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Undertow](https://github.com/undertow-io/undertow) - High performance non-blocking webserver. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/undertow-io/undertow.svg?style=social&label=Star&maxAge=2592000)](https://github.com/undertow-io/undertow). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Tomcat](https://github.com/apache/tomcat) - Robust all-round server for Servlet and JSP. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/apache/tomcat.svg?style=social&label=Star&maxAge=2592000)](https://github.com/apache/tomcat). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Nginx clojure](https://github.com/nginx-clojure/nginx-clojure) - Nginx module for embedding Clojure or Java or Groovy programs, typically those Ring based handlers. License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29) , [![GitHub stars](https://img.shields.io/github/stars/nginx-clojure/nginx-clojure.svg?style=social&label=Star&maxAge=2592000)](https://github.com/nginx-clojure/nginx-clojure). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Eclipse Jetty.project](https://github.com/eclipse/jetty.project) - Lightweight, small server, often embedded in projects. License: [Eclipse Public 1.0](https://www.eclipse.org/legal/epl-v10.html) / [Apache 2](http://www.apache.org/licenses/LICENSE-2.0).0, [![GitHub stars](https://img.shields.io/github/stars/eclipse/jetty.project.svg?style=social&label=Star&maxAge=2592000)](https://github.com/eclipse/jetty.project). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Jetty](https://github.com/eclipse/jetty.project) - Lightweight, small server, often embedded in projects. License: [Eclipse Public 1.0](https://www.eclipse.org/legal/epl-v10.html) / [Apache 2](http://www.apache.org/licenses/LICENSE-2.0).0, [![GitHub stars](https://img.shields.io/github/stars/eclipse/jetty.project.svg?style=social&label=Star&maxAge=2592000)](https://github.com/eclipse/jetty.project). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache TomEE](http://tomee.apache.org/) - Tomcat plus Java EE. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [WebSphere Liberty](https://developer.ibm.com/wasdev/) - Lightweight, modular server developed by IBM. ***License: proprietary*** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [GlassFish](https://glassfish.java.net/) - GlassFish - World's first Java EE 7 Application Server. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License) Or [CDDL 1.0](http://opensource.org/licenses/CDDL-1.0). 1. [Apache Geronimo](http://geronimo.apache.org/) Java EE Application Server. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache James](http://james.apache.org) The Apache Java Enterprise Mail Server (a.k.a. Apache James) is a 100% pure Java SMTP and POP3 Mail server and NNTP News server. We have designed James to be a complete and portable enterprise mail engine solution based on currently available open protocols. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) - +1. [Payara](https://github.com/payara/Payara) Payara Server is an open source middleware platform that supports reliable and secure deployments of Java EE (Jakarta EE) and MicroProfile applications in any environment: on premise, in the cloud or hybrid.[CDDL 1.1](https://github.com/payara/Payara/blob/master/LICENSE.txt) ### 2. Networking *Libraries for network programming.* @@ -884,7 +895,7 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach 1. [Apache CloudStack](http://cloudstack.apache.org/) Apache CloudStack is an IaaS (“Infrastracture as a Service”) cloud orchestration platform. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Stratos](http://stratos.apache.org) Apache Stratos is a highly-extensible Platform-as-a-Service (PaaS) framework that helps run Apache Tomcat, PHP, and MySQL applications and can be extended to support many more environments on all major cloud infrastructures. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Airavata](http://airavata.apache.org/) Apache Airavata is a software framework for executing and managing computational jobs and workflows on distributed computing resources including local clusters, supercomputers, national grids, academic and commercial clouds. Airavata is dominantly used to build Web-based science gateways and assist to compose, manage, execute, and monitor large scale applications (wrapped as Web based services) and workflows composed of these services. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) - +1. [Quarkus](https://github.com/quarkusio/quarkus) Quarkus is a Cloud Native, (Linux) Container First framework for writing Java applications. [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://github.com/quarkusio/quarkus/blob/master/LICENSE.txt) ### 13. Cluster Management *Frameworks which can dynamically manage applications inside of a cluster.* [Up](#useful-java-links) @@ -955,17 +966,19 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach *Tools that test from model to the view.* [Up](#useful-java-links) +1. [ArchUnit](https://github.com/TNG/ArchUnit) is a free, simple and extensible library for checking the architecture of your Java code. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/TNG/ArchUnit.svg?style=social&label=Star&maxAge=2592000)](https://github.com/TNG/ArchUnit). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Junit](https://github.com/junit-team/junit4) Common testing framework. License:  [Eclipse Public 1.0](https://www.eclipse.org/legal/epl-v10.html) , [![GitHub stars](https://img.shields.io/github/stars/junit-team/junit4.svg?style=social&label=Star&maxAge=2592000)](https://github.com/junit-team/junit4). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Mockito](https://github.com/mockito/mockito) Creation of test double objects in automated unit tests for the purpose of TDD or BDD. License: [MIT](https://opensource.org/licenses/MIT) , [![GitHub stars](https://img.shields.io/github/stars/mockito/mockito.svg?style=social&label=Star&maxAge=2592000)](https://github.com/mockito/mockito). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Selenium](https://github.com/SeleniumHQ/selenium) Portable software testing framework for web applications. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/SeleniumHQ/selenium.svg?style=social&label=Star&maxAge=2592000)](https://github.com/SeleniumHQ/selenium). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Cucumber jvm](https://github.com/cucumber/cucumber-jvm) Cucumber-JVM is a pure Java implementation of Cucumber that supports the most popular programming languages for the JVM. License: [MIT](https://opensource.org/licenses/MIT) , [![GitHub stars](https://img.shields.io/github/stars/cucumber/cucumber-jvm.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cucumber/cucumber-jvm). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Cucumber jvm](https://github.com/cucumber/cucumber-jvm) - BDD testing framework. Cucumber-JVM is a pure Java implementation of Cucumber that supports the most popular programming languages for the JVM. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/4.1-testing/cucumber). License: [MIT](https://opensource.org/licenses/MIT), [![GitHub stars](https://img.shields.io/github/stars/cucumber/cucumber-jvm.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cucumber/cucumber-jvm). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [JBehave](https://github.com/jbehave/jbehave-core) - extensively configurable framework for Behavior-Driven Development (BDD). BDD is an evolution of test-driven development (TDD) and acceptance-test driven design, and is intended to make these practices more accessible and intuitive to newcomers and experts alike. License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29), [![GitHub stars](https://img.shields.io/github/stars/jbehave/jbehave-core.svg?style=social&label=Star&maxAge=2592000)](https://github.com/jbehave/jbehave-core). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Spock](https://github.com/spockframework/spock) JUnit-compatible framework featuring an expressive Groovy-derived specification language. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/spockframework/spock.svg?style=social&label=Star&maxAge=2592000)](https://github.com/spockframework/spock). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Google Firing range](https://github.com/google/firing-range) Firing Range is a test bed for web application security scanners, providing synthetic, wide coverage for an array of vulnerabilities. It can be deployed as a Google App Engine application. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/google/firing-range.svg?style=social&label=Star&maxAge=2592000)](https://github.com/google/firing-range). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Fitnesse](https://github.com/unclebob/fitnesse) FitNesse is the fully integrated stand-alone acceptance testing framework and wiki.. License: [CPL-1.0](https://opensource.org/licenses/cpl1.0.php), [![GitHub stars](https://img.shields.io/github/stars/unclebob/fitnesse.svg?style=social&label=Star&maxAge=2592000)](https://github.com/unclebob/fitnesse). 1. [Sikuli](https://github.com/sikuli/sikuli) Sikuli is a visual technology to automate graphical user interfaces (GUI) using images (screenshots). The current release of Sikuli includes Sikuli Script, a visual scripting API for Jython, and Sikuli IDE, an integrated development environment for writing visual scripts with screenshots easily. License: [MIT](https://opensource.org/licenses/MIT) , [![GitHub stars](https://img.shields.io/github/stars/sikuli/sikuli.svg?style=social&label=Star&maxAge=2592000)](https://github.com/sikuli/sikuli). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [JavaHamcrest](https://github.com/hamcrest/JavaHamcrest) Matchers that can be combined to create flexible expressions of intent. License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_.28.22Revised_BSD_License.22.2C_.22New_BSD_License.22.2C_or_.22Modified_BSD_License.22.29), [![GitHub stars](https://img.shields.io/github/stars/hamcrest/JavaHamcrest.svg?style=social&label=Star&maxAge=2592000)](https://github.com/hamcrest/JavaHamcrest). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Wiremock](https://github.com/tomakehurst/wiremock) Stubbs and mocks web services. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/tomakehurst/wiremock.svg?style=social&label=Star&maxAge=2592000)](https://github.com/tomakehurst/wiremock). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Testng](https://github.com/cbeust/testng) Testing framework. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/cbeust/testng.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cbeust/testng). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [TestNG](https://github.com/cbeust/testng) Testing framework. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/cbeust/testng.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cbeust/testng). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Galenframework Galen](https://github.com/galenframework/galen) Layout and functional testing framework for websites. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/galenframework/galen.svg?style=social&label=Star&maxAge=2592000)](https://github.com/galenframework/galen). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [AssertJ](https://github.com/joel-costigliola/assertj-core) Fluent assertions that improve readability. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/joel-costigliola/assertj-core.svg?style=social&label=Star&maxAge=2592000)](https://github.com/joel-costigliola/assertj-core). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Google truth](https://github.com/google/truth) Google's assertion and proposition framework. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/google/truth.svg?style=social&label=Star&maxAge=2592000)](https://github.com/google/truth). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -973,7 +986,6 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach 1. [Arquillian](http://arquillian.org/) - Integration and functional testing platform for Java EE containers. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Awaitility](https://github.com/jayway/awaitility) - DSL for synchronizing asynchronous operations. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Citrus](http://citrusframework.org/) - Integration testing framework with focus on client- and serverside messaging. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Cucumber](https://github.com/cucumber/cucumber-jvm) - BDD testing framework. [Hello World examples](https://github.com/Vedenin/useful-java-links/tree/master/helloworlds/4.1-testing/cucumber). License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Gatling](http://gatling.io/) - Load testing tool designed for ease of use, maintainability and high performance. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [GreenMail](http://www.icegreen.com/greenmail/) - In-memory email server for integration testing. Supports SMTP, POP3 and IMAP including SSL. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [JGiven](http://jgiven.org) - Developer-friendly BDD testing framework compatible with JUnit and TestNG. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -987,6 +999,8 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach 1. [Unitils](http://www.unitils.org/) - Modular testing library for unit and integration testing. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [SeLion](https://github.com/paypal/SeLion) - Enabling Test Automation in Java. SeLion builds on top of TestNG and Selenium to provide a set of capabilities that get you up and running with WebDriver in a short time. It can be used for testing web and mobile applications, [![GitHub stars](https://img.shields.io/github/stars/paypal/SeLion.svg?style=social&label=Star&maxAge=2592000)](https://github.com/paypal/SeLion). License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [cdp4j](https://github.com/webfolderio/cdp4j) - Web-automation library for Java. It can be used for automating the use of web pages and for testing web pages. [![GitHub stars](https://img.shields.io/github/stars/webfolderio/cdp4j.svg?style=social&label=Star&maxAge=2592000)](https://github.com/webfolderio/cdp4j) License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Image-Comparison](https://github.com/romankh3/image-comparison) - Published on Maven Central Java Library that compares 2 images with the same sizes and shows the differences visually by drawing rectangles. Some parts of the image can be excluded from the comparison. [![GitHub stars](https://img.shields.io/github/stars/romankh3/image-comparison.svg?style=social&label=Star&maxAge=2592000)](https://github.com/romankh3/image-comparison) License: [The Unlicense](https://unlicense.org) +1. [LogCaptor](https://github.com/Hakky54/log-captor) - Captures log entries for unit testing purposes. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/hakky54/log-captor.svg?style=social&label=Star&maxAge=2592000)](https://github.com/Hakky54/log-captor). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) ### 2. Code Coverage *Frameworks and tools that enable collection of code coverage metrics for test suites.* @@ -1006,10 +1020,10 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach 1. [Codeship](https://codeship.com/features) - Hosted services with a limited free plan. ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [fabric8](http://fabric8.io/) - Integration platform for containers. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Go](https://www.thoughtworks.com/go/) - ThoughtWork's open-source solution. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Jenkins](http://jenkins-ci.org/) - Provides server-based deployment services. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Jenkins](http://jenkins.io/) - Provides server-based deployment services. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [TeamCity](http://www.jetbrains.com/teamcity/) - JetBrain's CI solution with a free version. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [Travis](https://travis-ci.org) - Hosted service often used for open-source projects. License: ? -1. [Hudson](http://hudson-ci.org/) - Hudson monitors the execution of repeated jobs, such as building a software project or jobs run by cron. Currently Hudson focuses on the following two jobs: Building/testing software projects continuously and Monitoring executions of externally-run jobs. License: [Eclipse Public License v1.0](https://en.wikipedia.org/wiki/Eclipse_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Hudson](https://www.eclipse.org/hudson/) - Hudson monitors the execution of repeated jobs, such as building a software project or jobs run by cron. Currently Hudson focuses on the following two jobs: Building/testing software projects continuously and Monitoring executions of externally-run jobs. License: [Eclipse Public License v1.0](https://en.wikipedia.org/wiki/Eclipse_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache Continuum](http://continuum.apache.org/) Apache Continuum software is an enterprise-ready continuous integration server with features such as automated builds, release management, role-based security, and integration with popular build tools and source control management systems.. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -1073,10 +1087,10 @@ of Apache Hadoop. https://hive.apache.org/ .License: [Apache 2](http://www.apach [Up](#useful-java-links) 1. [Bintray](https://bintray.com/) - 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. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) -1. [Capsule](https://github.com/puniverse/capsule) - Simple and powerful packaging and deployment. A fat JAR on steroids or a "Docker for Java" that supports JVM-optimized containers. http://www.capsule.io/ [![GitHub stars](https://img.shields.io/github/stars/puniverse/capsule.svg?style=social&label=Star&maxAge=2592000)](https://github.com/puniverse/capsule). License: [Eclipse Public License v1.0](https://en.wikipedia.org/wiki/Eclipse_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Capsule](https://github.com/puniverse/capsule) - Simple and powerful packaging and deployment. A fat JAR on steroids or a "Docker for Java" that supports JVM-optimized containers. [![GitHub stars](https://img.shields.io/github/stars/puniverse/capsule.svg?style=social&label=Star&maxAge=2592000)](https://github.com/puniverse/capsule). License: [Eclipse Public License v1.0](https://en.wikipedia.org/wiki/Eclipse_Public_License). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Central Repository](http://search.maven.org/) - 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. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) -1. [IzPack](https://github.com/izpack/izpack) - Setup authoring tool for cross-platform deployments. http://izpack.org/ License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/izpack/izpack.svg?style=social&label=Star&maxAge=2592000)](https://github.com/izpack/izpack)). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [JitPack](https://github.com/jitpack/jitpack.io/) - Easy to use package repository for GitHub. Builds Maven/Gradle projects on demand and publishes ready-to-use packages. https://jitpack.io/ License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/jitpack/jitpack.io.svg?style=social&label=Star&maxAge=2592000)](https://github.com/jitpack/jitpack.io)). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [IzPack](https://github.com/izpack/izpack) - Setup authoring tool for cross-platform deployments. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/izpack/izpack.svg?style=social&label=Star&maxAge=2592000)](https://github.com/izpack/izpack)). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [JitPack](https://github.com/jitpack/jitpack.io/) - Easy to use package repository for GitHub. Builds Maven/Gradle projects on demand and publishes ready-to-use packages. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/jitpack/jitpack.io.svg?style=social&label=Star&maxAge=2592000)](https://github.com/jitpack/jitpack.io)). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Launch4j](http://launch4j.sourceforge.net/) - Wraps JARs in lightweight and native Windows executables. License: [BSD 3](https://en.wikipedia.org/wiki/BSD_licenses) or [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Nexus](http://www.sonatype.com/nexus-repository-sonatype) - Binary management with proxy and caching capabilities. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [packr](https://github.com/libgdx/packr/) - Packs JARs, assets and the JVM for native distribution on Windows, Linux and Mac OS X. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -1122,10 +1136,11 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [AppDynamics](https://www.appdynamics.com/) - Commercial performance monitor. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [JavaMelody](https://github.com/javamelody/javamelody) - Performance monitoring and profiling. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [jmxtrans](https://github.com/jmxtrans/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. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -1. [Kamon](http://www.kamon.io/) - Tool for monitoring applications running on the JVM. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Kamon](https://www.kamon.io/) - Tool for monitoring applications running on the JVM. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Glowroot](https://glowroot.org/) - Open source Java APM. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [New Relic](http://newrelic.com/) - Commercial performance monitor. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) 1. [SPM](https://sematext.com/spm/) - Commercial performance monitor with distributing transaction tracing for JVM apps. **License: proprietary**![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) -1. [Takipi](https://www.takipi.com/) - Commercial in-production error monitoring and debugging. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) +1. [OverOps](https://www.overops.com/) - Root cause automation in production. **License: proprietary** ![proprietary license](https://github.com/Vedenin/useful-java-links/blob/master/img/proprietary-license.png?raw=true) #### 6. Redefinition of classes at runtime [Up](#useful-java-links) @@ -1148,6 +1163,7 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [Bytecode viewer](https://github.com/Konloch/bytecode-viewer) A Java 8 Jar & Android APK Reverse Engineering Suite (Decompiler, Editor, Debugger & More). License: [GNU 3](https://en.wikipedia.org/wiki/GNU_General_Public_License), [![GitHub stars](https://img.shields.io/github/stars/Konloch/bytecode-viewer.svg?style=social&label=Star&maxAge=2592000)](https://github.com/Konloch/bytecode-viewer). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) 1. [Reflections](https://github.com/ronmamo/reflections) Java runtime metadata analysis, in the spirit of Scannotations. Reflections scans your classpath, indexes the metadata, allows you to query it on runtime and may save and collect that information for many modules within your project. License: [WTFPL](https://en.wikipedia.org/wiki/WTFPL), [![GitHub stars](https://img.shields.io/github/stars/ronmamo/reflections.svg?style=social&label=Star&maxAge=2592000)](https://github.com/ronmamo/reflections). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Jabba:](https://github.com/shyiko/jabba) Java Version Manager inspired by [nvm](https://github.com/creationix/nvm) (Node.js). The goal is to provide unified pain-free experience of installing (and switching between different versions of) JDK. License [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/shyiko/jabba.svg?style=social&label=Star&maxAge=2592000)](https://github.com/shyiko/jabba). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Chocotea:](https://github.com/cleopatra27) Generates postman collection, environment and integration tests from java code. License [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/cleopatra27/chocotea.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cleopatra27/chocotea). *Current implementations of the JVM/JDK.* @@ -1156,8 +1172,8 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [Zulu OpenJDK](http://www.azul.com/downloads/zulu/) - OpenJDK builds for Windows, Linux, and Mac OS X through Java 8. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) 1. [Zulu OpenJDK 9](http://zulu.org/zulu-9-pre-release-downloads/) - Early access OpenJDK 9 builds for Windows, Linux, and Mac OS X. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) -## VI. Program languages and applications, that was written with Java -### 1. Program languages, that was written with Java +## VI. Program languages and applications that were written with Java +### 1. Program languages that were written with Java [Up](#useful-java-links) 1. [Clojure](https://github.com/clojure/clojure) The Clojure programming language. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/clojure/clojure.svg?style=social&label=Star&maxAge=2592000)](https://github.com/clojure/clojure). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -1168,7 +1184,7 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [Trifork Erjang](https://github.com/trifork/erjang) A JVM-based Erlang VM. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/trifork/erjang.svg?style=social&label=Star&maxAge=2592000)](https://github.com/trifork/erjang). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -### 2. Other program languages tools, that was written with Java +### 2. Other program languages tools that were written with Java [Up](#useful-java-links) 1. [Go lang idea plugin](https://github.com/go-lang-plugin-org/go-lang-idea-plugin) Google Go language IDE built using the IntelliJ Platform. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/go-lang-plugin-org/go-lang-idea-plugin.svg?style=social&label=Star&maxAge=2592000)](https://github.com/go-lang-plugin-org/go-lang-idea-plugin). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -1191,7 +1207,7 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [JavaCC](https://javacc.java.net/) -More specific and slightly easier to learn. Has syntactic lookahead. License: [BSD ](https://en.wikipedia.org/wiki/BSD_licenses). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -### 5. Opensource applications, that was written with Java +### 5. Opensource applications that were written with Java [Up](#useful-java-links) 1. [Square Keywhiz](https://github.com/square/keywhiz) - A system for distributing and managing secrets. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/square/keywhiz.svg?style=social&label=Star&maxAge=2592000)](https://github.com/square/keywhiz). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) @@ -1211,7 +1227,7 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [Languagetool](https://github.com/languagetool-org/languagetool) - Style and Grammar Checker for 25+ Languages. License: [GNU Lesser 2.1](https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License), [![GitHub stars](https://img.shields.io/github/stars/languagetool-org/languagetool.svg?style=social&label=Star&maxAge=2592000)](https://github.com/languagetool-org/languagetool). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Apache OpenMeetings](http://openmeetings.apache.org) Video conferencing, instant messaging, white board and collaborative document editing application. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) -### 6. Opensource games, that was written with Java +### 6. Opensource games that were written with Java [Up](#useful-java-links) 1. [Bukkit](https://github.com/Bukkit/Bukkit) The Minecraft Mod API. License: [GNU 2](https://en.wikipedia.org/wiki/GNU_General_Public_License), [![GitHub stars](https://img.shields.io/github/stars/Bukkit/Bukkit.svg?style=social&label=Star&maxAge=2592000)](https://github.com/Bukkit/Bukkit). ![impossible proprietary code linking license](https://github.com/Vedenin/useful-java-links/blob/master/img/impossible-proprietary-code-linking.png?raw=true) @@ -1245,6 +1261,7 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o 1. [7guis](https://github.com/eugenkiss/7guis) 7GUIs is a GUI programming usability benchmark. License: ?, [![GitHub stars](https://img.shields.io/github/stars/eugenkiss/7guis.svg?style=social&label=Star&maxAge=2592000)](https://github.com/eugenkiss/7guis). 1. [Spring projects Spring data jpa examples](https://github.com/spring-projects/spring-data-examples) Spring Data Example Projects. License: [Apache 2](http://www.apache.org/licenses/LICENSE-2.0) , [![GitHub stars](https://img.shields.io/github/stars/spring-projects/spring-data-examples.svg?style=social&label=Star&maxAge=2592000)](https://github.com/spring-projects/spring-data-examples). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) 1. [Modern Java - A Guide to Java 8](https://github.com/winterbe/java8-tutorial) - Modern Java - A Guide to Java 8. License: [MIT](https://opensource.org/licenses/MIT). ![business friendly license](https://github.com/Vedenin/useful-java-links/blob/master/img/business-friendly.png?raw=true) +1. [Java Micro code pieces](https://onelinerhub.com/java) - community library of micro Java code solutions for popular issues. ### 2. Benchmark results [Up](#useful-java-links) @@ -1267,13 +1284,15 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o * [r/java](https://www.reddit.com/r/java) - Subreddit for the Java community. * [stackoverflow](http://stackoverflow.com/questions/tagged/java) - Question/answer platform. * [vJUG](http://virtualjug.com/) - Virtual Java User Group. +* [DevProjects](https://www.codementor.io/projects/java) - Community to discuss Java projects and share solutions. + ### 2. Influential Books *Books that had a high impact and are still worth reading.* [Up](#useful-java-links) -* [Effective Java (2nd Edition)](http://www.amazon.com/Effective-Java-Edition-Joshua-Bloch/dp/0321356683) -* [Java 8 in Action](http://www.amazon.com/Java-Action-Lambdas-functional-style-programming/dp/1617291994/) +* [Effective Java (3nd Edition)](https://www.amazon.com/Effective-Java-Joshua-Bloch/dp/0134685997) +* [Modern Java in Action](https://www.amazon.com/Modern-Java-Action-functional-programming/dp/1617293563) * [Java Concurrency 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) @@ -1284,10 +1303,11 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o * [Android Arsenal](https://android-arsenal.com) * [Google Java Style](http://google-styleguide.googlecode.com/svn/trunk/javaguide.html) +* [Hackr.io](https://hackr.io/tutorials/learn-java) * [InfoQ](http://www.infoq.com/) * [Java, SQL, and jOOQ](https://blog.jooq.org/) -* [Java.net](https://home.java.net/) * [Javalobby](https://dzone.com/java-jdk-development-tutorials-tools-news) +* [Java tutorial](https://hackr.io/tutorials/learn-java) * [JavaWorld](http://www.javaworld.com/) * [JAXenter](https://jaxenter.com/) * [RebelLabs](http://zeroturnaround.com/rebellabs/) @@ -1298,3 +1318,7 @@ Teamware, ClearCase, Perforce, Monotone and Bazaar. License: [CDDL 1.0](http://o * [Vanilla Java](http://vanillajava.blogspot.ch/) * [Vlad Mihalcea on Hibernate](https://vladmihalcea.com/) * [Voxxed](https://www.voxxed.com/) +* [OverOps Blog](https://blog.takipi.com/) +* [Bookmarks.dev](https://www.bookmarks.dev/tagged/java) +* [Baeldung](https://www.baeldung.com/full_archive) +* [InterviewBit](https://www.interviewbit.com/courses/fast-track-java/)