Remix.run Logo
112233 3 days ago

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?

jeroenhd 3 days ago | parent | next [-]

OpenJDK is pretty much open and straight from Oracle.

If you don't like Oracle (and I wouldn't blame you), there are alternatives from parties ranging from the Eclipse Foundation to Microsoft and Amazon that will do the same thing.

As for new projects, Java is here to stay. It's longevity is part of why companies are still using Java 8/11; once you write it, it'll run pretty much forever.

The language lags behind in terms of features compared to pretty much any competitor, but it's functional enough to get anything important done.

I'd personally go Kotlin if you were to rely on the JVM (almost entirely because Java still lacks nullable types which means nullpointerexceptions are _everywhere_) or C# if you don't like the Kotlin syntax, but Java is Good Enough.

whartung 3 days ago | parent | prev | next [-]

The only real nut right now is, if you're using the Oracle distributions, only the latest LTS is, essentially, free to do anything with.

Older releases are under their OTN license, which is only for personal and development, but not production.

Again, this only matters if you want an Oracle sticker on your runtime, OpenJDK and the other projects are full boat "do whateva" JDKs.

wmwragg 3 days ago | parent [-]

Note that the previous Java LTS release license reverts to the OTN license one year after the new Java LTS version is published, making it no longer free, assuming you keep up with the security updates. See the license note on the Java 21 LTS version[1].

[1] https://www.oracle.com/uk/java/technologies/downloads/#java2...

exabrial 3 days ago | parent | prev | next [-]

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

nirvdrum 2 days ago | parent | prev | next [-]

Truffle is not part of OpenJDK. It's a separate project and licensed under the Universal Permissive License: https://github.com/oracle/graal/tree/master/truffle.

The UPL is an OSI-approved open source license. It shouldn't be a problem to use in any setting, but you should check with your legal team to see what licenses are approved.

piva00 3 days ago | parent | prev | next [-]

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

ffsm8 3 days ago | parent [-]

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 3 days ago | parent | next [-]

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...

giancarlostoro 3 days ago | parent | next [-]

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

I have a feeling all those companies / orgs would band together to maintain it.

pron 2 days ago | parent | prev [-]

Amazon Corretto and Eclipse Temurin are developed and licensed by Oracle. They are just packaged and distributed by Amazon and IBM respectively. If you report an issue against them, the Amazon/IBM people will forward the issue to us at Oracle to resolve.

BTW, I don't dispute that Oracle is greedy, but I find the suggestion that Amazon, IBM, Google, MS etc. are any less so laughable.

miki123211 3 days ago | parent | prev [-]

Honestly, Java is one of those technologies I would never worry about in this way.

It is used everywhere. Just among the faang companies, Apple, Amazon, Netflix and Google definitely use it at scale, and they're just the tip of the iceberg. Taking away JVM updates would almost be a company-ending event for them, and they definitely have the resources to keep it alive if Oracle ever dies.

deepsun 3 days ago | parent | prev [-]

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