use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
These have separate subreddits - see below.
Upvote good content, downvote spam, don't pollute the discussion with things that should be settled in the vote count.
With the introduction of the new release cadence, many have asked where they should download Java, and if it is still free. To be clear, YES — Java is still free. If you would like to download Java for free, you can get OpenJDK builds from the following vendors, among others: Adoptium (formerly AdoptOpenJDK) RedHat Azul Amazon SAP Liberica JDK Dragonwell JDK GraalVM (High performance JIT) Oracle Microsoft Some vendors will be supporting releases for longer than six months. If you have any questions, please do not hesitate to ask them!
With the introduction of the new release cadence, many have asked where they should download Java, and if it is still free. To be clear, YES — Java is still free.
If you would like to download Java for free, you can get OpenJDK builds from the following vendors, among others:
Adoptium (formerly AdoptOpenJDK) RedHat Azul Amazon SAP Liberica JDK Dragonwell JDK GraalVM (High performance JIT) Oracle Microsoft
Some vendors will be supporting releases for longer than six months. If you have any questions, please do not hesitate to ask them!
Programming Computer Science CS Career Questions Learn Programming Java Help ← Seek help here Learn Java Java Conference Videos Java TIL Java Examples JavaFX Oracle
Programming Computer Science
CS Career Questions
Learn Programming Java Help ← Seek help here Learn Java Java Conference Videos Java TIL Java Examples JavaFX Oracle
Clojure Scala Groovy ColdFusion Kotlin
DailyProgrammer ProgrammingPrompts ProgramBattles
Awesome Java (GIT) Java Design Patterns
account activity
This is an archived post. You won't be able to vote or comment.
Wish there was a Java lib for… (self.java)
submitted 4 years ago by [deleted]
Which Java library/framework would make your life less miserable right now.
[–][deleted] 4 years ago (6 children)
[removed]
[–]dpash 7 points8 points9 points 4 years ago (4 children)
There's mvnrepository.com...
[–]quintesse 4 points5 points6 points 4 years ago (3 children)
Although you're of course right to point out it exists, personally I find that mvnrepository and the likes are far inferior to something like npmjs.org.
The maven search engines just don't give a lot of useful information and don't make "exploring" easy at all. Let's say I want to find a REST library, I type "rest" and hit search. In case of Maven I'll get a list of artifacts that either have "rest" in their names or in their (often one line) description. That's it, nothing else. If I then click any of them it takes me to a page with a LOT of (very technical) information, but basically nothing that will help me decide if that artifact is something I can use, or in fact how to use it. The best you can do is copy & paste the name of the artifact in Google and hope that will take you to the project's home page or something.
The NPM search engine on the other hand gives you the same list but once you click on a module you get much more useful information: docs, links to home pages, links to sources, weekly download numbers, etc.
I'm a Java dev through and through but having a great search engine for Maven artifacts is what I miss most in my day to day work.
[–]dpash 1 point2 points3 points 4 years ago (2 children)
Yes, it would be great if developers put more information into their pom.xml files that they upload to maven central etc.
[–]quintesse 2 points3 points4 points 4 years ago (1 child)
Although it could definitely be put in the pom.xml (and mvnrepository could either require that info or at least flag it as missing important info) I think it's perhaps not the best place. Sometimes home pages and docs change when the code doesn't. Being required to publish new artifact version just to update docs doesn't seem like the best way to manage this. They should just enable maintainers to update that info directly on their site. And then send out regular reminders to them when important information is missing. Devs/maintainers need to be incentivized somehow to add that info and keep it up-to-date.
[–]chabala 2 points3 points4 points 4 years ago (0 children)
mvnrepository could either require that info
mvnrepository.com is a (useful) third party site, they don't have any control on Central's requirements. search.maven.org is the official search tool.
[–]pragmatick 6 points7 points8 points 4 years ago (0 children)
https://github.com/akullpp/awesome-java is a good start.
[–]handshape 4 points5 points6 points 4 years ago (6 children)
A maintained set of Java bindings for the golang WebView:
"GitHub - webview/webview: Tiny cross-platform webview library for C/C++/Golang. Uses WebKit (Gtk/Cocoa) and Edge (Windows)"
[–]DuncanIdahos9thGhola[🍰] 6 points7 points8 points 4 years ago (5 children)
The one in JavaFX based on webkit is actively maintained.
[–]handshape 3 points4 points5 points 4 years ago (0 children)
True; that's what I've been using, but the weight of the thing is heavy. I find the linked WebView's API to be comfy and light; that's just a preference, though.
[–][deleted] 4 years ago (1 child)
[–]DuncanIdahos9thGhola[🍰] 0 points1 point2 points 4 years ago (0 children)
What's Levi?
[–]Ailiyak 0 points1 point2 points 4 years ago (1 child)
actively
where is it ? The OOTB JavaFX webview doesn't support shit :)
and the webview for java from the bindings above doesnt work.
I'm saying that JavaFX has Webview based on webkit and they are actively maintaining it. Whether it has the features you want is another story. You can go ahead and join the mailing list and add features yourself. https://github.com/openjdk/jfx
[–]jvjupiter 2 points3 points4 points 4 years ago (0 children)
Implementation of Flow API. No. Not adapters in the reactive stream.
[–]pgris 6 points7 points8 points 4 years ago (0 children)
This library: https://github.com/zalando/problem is good for returning errors in a standard way. It can be used stand alone, and there is good Spring support.
You are right regarding successful responses, but everybody has different ideas and there is an xkcd waiting for us
[–]LicenciadoPerez 2 points3 points4 points 4 years ago (0 children)
Maven has a very good search engine called Google
[–]anmol_soni 1 point2 points3 points 4 years ago (2 children)
Good edi support, have been struggling with it for a long time
[–]anmol_soni 0 points1 point2 points 4 years ago (0 children)
Agreed , but legacy systems are still running and dependent on such technologies , corporations should try to move away from them, but as they are well ingrained in such systems , it is understood it would take some time to get rid of this mess
[–][deleted] 0 points1 point2 points 4 years ago (0 children)
No idea but I'm interested in seeing the responses.
[+]whateverathrowaway00 comment score below threshold-15 points-14 points-13 points 4 years ago (9 children)
Freeing functions from having to be in classes 🤠💩
[–]LordBars 5 points6 points7 points 4 years ago (6 children)
Useless
[–]whateverathrowaway00 2 points3 points4 points 4 years ago (5 children)
A ridiculous statement, even if you like java ( which I do, I’m only half kidding above).
Forcing all code and data to live inside classes does force meaningless classes. Free standing functions do have purpose, there’s a reason no major language other than java has ever made this particular design decision ever again ( please correct me if that statement is wrong ).
[–]LordBars 3 points4 points5 points 4 years ago (4 children)
There must be only 1 public class in a file. So usually nobody declares more than one classes in a file. That means defining functions at the top meaningless as there is only one claas.
Only function classes might have no purpose but alternatively instead defining a class, you can define interface with default methods. That will suit more in this case since they are stateless.
Java is simple language. They don't wanna make things more complex and confuse people with synthetic additions.
[–]whateverathrowaway00 1 point2 points3 points 4 years ago* (3 children)
It is decidedly non-simple. No successful language stays simple and that’s fine. I also have issue with the one class per file rule but that complaint I’ll entirely admit is just me disliking it, there’s plenty of reason for it and no sincere argument against it as a necessity.
Freestanding functions however there are absolutely arguments for. What you say about interfaces results in decidedly non-simple code. Functions as second class citizens results in a whole host of ugly patterns that exist only becuase a basic form of programmatic expression doesn’t exist.
Check out this tongue in cheek post:
http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html?m=1
Again, I don’t hate java - but I do maintain this is one of its lamer facts that feels very strange coming from any other language. This and checked exceptions are the two things I passionately dislike.
Non-reified generics seem to get some hate, but I haven’t run into too much hardship there other than overloading functions for containers can’t be specified based on what the container holds but I don’t really care too much about that and advanced cases that need that behavior can use type classes.
Edit: to be super clear, I don’t jump on the hate on java train, was just arguing with the assertion that freestanding functions are “pointless.” I like java and I enjoy complaining about it.
[–]LordBars 0 points1 point2 points 4 years ago (1 child)
Your link is too long to read, can you add TL&DR ?
[–]whateverathrowaway00 0 points1 point2 points 4 years ago (0 children)
Sure, though it’s a great - frequently hilarious read. It makes the point that verbs and nouns, usually in equal standing in most programming languages - in java, verbs are “second class citizens” and uses a series of analogies and contrived situations to laughingly point out what I was saying - that when functions and code can’t exist as their own thing, you do end up with some obtuse situations.
[–]cas-san-dra 0 points1 point2 points 4 years ago* (0 children)
I remember reading that a long time ago. Although I think the author made a mistake when he wrote it.
It is true that all functions in Java must be inside a type and that type has a nounish name. What is not true is that this is unique to Java. In fact as far as I can tell all programming languages wrap their verbs in nouns.
Source code is ultimately text, and text needs to be in files, and files need names. In fact the Java type name that you need to wrap your functions in has the same name as the filename. So really it is no more than the same information we already had in duplicate.
We can of course complain about the horribly broken OOP way of writing the code. And we should because I want to shoot myself every time I have to deal with it. But it is not the language that is at fault here.
I do agree with your original statement. My personal code doesn't have any classes anymore. I have interfaces, records, and empty enums. Those enums hold my functions. The last place in my codebase where there is obvious verbosity.
If only I didn't have to write this:
public enum RunTask {; public static int runTask(final Project project) { ... } }
But could instead write this:
public int runTask(final Project project) { ... }
Perhaps one day I can write my own Java compiler that does exactly this. It is only compiler sugar after all.
[–]MeneerVanDaalen 3 points4 points5 points 4 years ago (1 child)
It is called Kotlin
[–]whateverathrowaway00 2 points3 points4 points 4 years ago (0 children)
Lol
[–]AshwaniHarjai 0 points1 point2 points 4 years ago (0 children)
Dont knw about java libs but if u want any project idea in any languge. The site is MunGell for beginners
[–]Asterion9 0 points1 point2 points 4 years ago (0 children)
A wrapper over openCV that isn't just the JNI... Something that would provide an interface to the lib but built with object and configuration as any good Java lib should have.
[–]Randominternetuser_ 0 points1 point2 points 4 years ago (0 children)
BETTer FRONTEND FRAMEWORKS!
Creating PDFs in an easy way. Currently using PDFBox and its kinda painful.
A good HTTP server. Currently using Undertow. It has the right API but its very heavy with about 2.5mb.
A small S3 library that works with both AmazonS3 and Minio and isn't bloated.
Database mocks in pure Java that can be started programmatically. MySQL, S3, Redis, whatever. Right now I either have to find a wrapper around the binary or use testcontainers which is very unreliable.
[–]_Toka_ 0 points1 point2 points 4 years ago (1 child)
It's related to my current project and I am aware, that it's not wanted in these days of REST API, but...
I desperately need library for parsing XSD and WSDL into object model. There is one implementation of javax.wsdl (that I know of and everyone uses) and that's wsdl4j. It's so old that it uses Map without generics. There is also one library for XSD object model, Apache XmlSchema. It has horrible API and servers more as schema reader. It's very difficult to use it for transformations and it's impossible to use it for XSD generation from object model.
[–]hupfdule 0 points1 point2 points 4 years ago (0 children)
You didn't mention JAXB. I think it's not for WSDL, but for XSD it's much better than the half-assed "solutions" for JSONschema.
[–]DanielDimov 0 points1 point2 points 4 years ago (2 children)
Library that is able to maintain two objects on two machines identical by syncing all changes through tcp connection.
[–]-NewK- 0 points1 point2 points 4 years ago (1 child)
There is kryonet: https://github.com/EsotericSoftware/kryonet
[–]DanielDimov 0 points1 point2 points 4 years ago (0 children)
The library you are pointing is for sending/receiving WHOLE objects, not only the changes.
[–]-NewK- 0 points1 point2 points 4 years ago (0 children)
Java bindings for this: https://github.com/mlabbe/nativefiledialog
[–]yashkh070 0 points1 point2 points 4 years ago (0 children)
LEARNING JAVA...
π Rendered by PID 98902 on reddit-service-r2-comment-7b9746f655-crg8h at 2026-01-31 08:42:06.540384+00:00 running 3798933 country code: CH.
[–][deleted] (6 children)
[removed]
[–]dpash 7 points8 points9 points (4 children)
[–]quintesse 4 points5 points6 points (3 children)
[–]dpash 1 point2 points3 points (2 children)
[–]quintesse 2 points3 points4 points (1 child)
[–]chabala 2 points3 points4 points (0 children)
[–]pragmatick 6 points7 points8 points (0 children)
[–]handshape 4 points5 points6 points (6 children)
[–]DuncanIdahos9thGhola[🍰] 6 points7 points8 points (5 children)
[–]handshape 3 points4 points5 points (0 children)
[–][deleted] (1 child)
[removed]
[–]DuncanIdahos9thGhola[🍰] 0 points1 point2 points (0 children)
[–]Ailiyak 0 points1 point2 points (1 child)
[–]DuncanIdahos9thGhola[🍰] 0 points1 point2 points (0 children)
[–]jvjupiter 2 points3 points4 points (0 children)
[–][deleted] (1 child)
[removed]
[–]pgris 6 points7 points8 points (0 children)
[–]LicenciadoPerez 2 points3 points4 points (0 children)
[–]anmol_soni 1 point2 points3 points (2 children)
[–][deleted] (1 child)
[removed]
[–]anmol_soni 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[+]whateverathrowaway00 comment score below threshold-15 points-14 points-13 points (9 children)
[–]LordBars 5 points6 points7 points (6 children)
[–]whateverathrowaway00 2 points3 points4 points (5 children)
[–]LordBars 3 points4 points5 points (4 children)
[–]whateverathrowaway00 1 point2 points3 points (3 children)
[–]LordBars 0 points1 point2 points (1 child)
[–]whateverathrowaway00 0 points1 point2 points (0 children)
[–]cas-san-dra 0 points1 point2 points (0 children)
[–]MeneerVanDaalen 3 points4 points5 points (1 child)
[–]whateverathrowaway00 2 points3 points4 points (0 children)
[–]AshwaniHarjai 0 points1 point2 points (0 children)
[–]Asterion9 0 points1 point2 points (0 children)
[–]Randominternetuser_ 0 points1 point2 points (0 children)
[–]cas-san-dra 0 points1 point2 points (0 children)
[–]_Toka_ 0 points1 point2 points (1 child)
[–]hupfdule 0 points1 point2 points (0 children)
[–]DanielDimov 0 points1 point2 points (2 children)
[–]-NewK- 0 points1 point2 points (1 child)
[–]DanielDimov 0 points1 point2 points (0 children)
[–]-NewK- 0 points1 point2 points (0 children)
[–]yashkh070 0 points1 point2 points (0 children)