Return to site

53 Java libraries to solve your problems

=>based on Emmanuel Bernard (Java Champion) article

· java

LANGUAGE

Roaster=Java parser
JavaPoet=source generator
Failsafe=failure handler
JCTools=concurrency tool
Lombok=boilerplate code handler
Guava=Google lib
RoaringBitmap=bitset compressor
JavaFX=GUI platform
Vavr=functional lib for robustness

BASE LIBRAIRIES

PrettyTime=date converter
Apache Commons
Lightbend config=JVM config
protonpack=Stream utilities
Scientist4J=Github's refactoring tool port

SERVER

fluent-http=web server
DeltaSpike=CDI extensions
Apache Kafka Streams=microservices client
Reactor=reactive syst
Apache Camel=integration
Netty=event-driven network

WEB

jsoup=HTML parser
OkHttp=HTTP client
Retrofit=HTTP client
Apache Struts
logbook=logging
OmniFaces=JSF

PARSERS & DATA

Apache POI=Excel
tabula-java=PDF tables
traprange=PDF tabules
specification-arg-resolver=data filter
GraphQL Java
MapStruct=mapping
jOOQ=SQL
Karate=testing

TEST

Testcontainers=tests in Docker
FakeSMTP
PIT Mutation Testing
Mockito
WireMock=HTTP simulator
Awaitility=async op
XMLUNit
EqualsVerifier
AssertJ
springfox=documentation

TOOLS

Jmxterm=JMXclient
docker-java Docker client
picocli=CLI
jqwik=properties

OTHER

Jenetics=genetics
H2 Database Engine=memory DB
pac4j=security
Apache Shiro=security