Skip to content(if available)orjump to list(if available)

Java 25 Officially Released

Java 25 Officially Released

21 comments

·September 16, 2025

BlindEyeHalo

Crazy that it took this long to allow parameter validation and transformation before calling super in the constructor.

That was something that always bothered me because it felt so counterintuitive.

delusional

Especially because you were always able to bypass it by declaring a `static` function and calling that as part of the parameters to `super`:

public Foo(int x) { super(validate(x)); }

validate would run before super, even though super was technically the first statement in the constructor, and the compiler was happy.

bootman

Java has been such an amazingly solid technological foundation... and for a long, long time! It may not be the most sexy language but it's been a stable one. We have applications created with Java 1.4 running happily on Java 21 LTS and expect to upgrade to this latest LTS (Java 25) soon. Java for the win!

freedomben

Neat, I wrote some swing apps back in the day that I've thought about resurrecting, but didn't want to have to do much modifying since they are mostly toys, though useful to me. I'm gonna give it a try!

ilt

Kind of tangential, I still remember Gmail app created in Java which used to run on my touch Symbian phone in 2009. It was cute as hell and got the work done.

mkurz

New Features: https://openjdk.org/projects/jdk/25/

Java 25 is an LTS release.

theflyinghorse

Can't wait to have a job migrating an application from 17 to java 25 in 10 years!

cryptos

Nice overview of new features in Java 25: https://www.baeldung.com/java-25-features

mrsilencedogood

Damn, still not structured concurrency full release. Really looking forward to that one.

Happy to see Scoped Values here though. That'll be big for writing what I'll call "rails-like" things in Java without it just being a big "static final" soup in a god-class, or having a god object passed around everywhere.

pjmlp

Much better this way with previews, than the mess C++ is having nowadays with standardising features without implementations.

jayd16

I hope structured concurrency ends up feeling better than async/await with less sugar. The examples do not instill confidence, but we shall see.

pjmlp

Unfortunately on .NET side, TPL Dataflow doesn't get enough love.

jayd16

They added an async Channel and its actually pretty nice to work with, at least.

dionian

I would be shocked if they came up with something that made me want to move away from ZIO.

112233

What is the current situation of using Java (from legal standpoint)? In open source and in commercial setting? Oracle has a lot of fantastic technology locked up in Java (things like Truffle), how reasonable it is for new projects?

exabrial

There is literally 0 worry. OpenJDK is fully open source.

deepsun

It's only a consideration if you are going to write your own Java implementation and distribute it.

piva00

Use OpenJDK (or similar) and you are free from any Oracle shenanigans.

ffsm8

I don't disagree (it is gpl licenced after all)- but it's worth keeping in mind that openjdk is still provided by oracle, too.

And all the other variants ultimately just repackage it. So if oracle doesn't care about destroying the Java IP, it definitely could cut everyone off from updates going forward.

I don't think they'll do so however, MySQL is still freely usable too, right? And that's oracle IP too.

Might change if they ever get into financial troubles, but that's the same issue with all languages and frameworks.

thuridas

And there is Amazon Correcto, Eclipse Temurin...

Sure, that could stop to maintain it, but would put the power immediately in the hands of other companies with a fork

That said, you always have oracle's greediness...

null

[deleted]