There's absolutely no reason to pay for Oracle's JDK unless you want Oracle's support.
It was probably intentional, but Oracle really fucked up the marketing on this change and as a result a bunch of FUD has been spread throughout the Java ecosystem.
Even if there were no free alternatives to Oracle's JDK (there are plenty), who looks at the cost of engineering time, opportunity costs, and thinks "yeah, this is way cheaper than paying Oracle"?
The past two companies I've worked for are forcing teams to move to OpenJDK and one was far more diligent about conducting audits for this than they were for GDPR.
If it becomes a problem it will be too late to not pay Oracle huge fees/fines for using it against the license. Oracle is known for their license enforcement, it might even bankrupt your company.
Not here, we've migrated to OpenJDK binaries maintained by Red Hat and Azul (depending on OS). They're still FOSS so it hasn't affected us, yet at least.
I have never seen an issue from switching Java SE->OpenJDK. We did the whole company in one day without outages. I'm convinced that incompatiblies don't exist in practice.
No need to change to another language, as has been pretty much outlined by previous posts Java is driven by the changes added to OpenJDK. Even Oracles commercial binaries use the OpenJDK code repository, compile it and add some support. Use one of the other vendors (Corretto by Amazon is freely available)
We're using it when compiling our code, but our software deliveries are bundled with the amazon Corretto (because we already have a contract with Amazon because of AWS, so getting security updates shouldn't be an issue) and our installer offer the option to use another JRE, so our clients can use any JRE 11; but for Oracle 11 JRE, they'll have to pay Oracle themselves.
To answer the OP, we didn't rewrite anything, just switched to a no-cost JRE. And since we did it at the same time of the Java 8 -> 11 switch, there were no extra dev costs.
It's open source, so if Red Hat stops supporting it then others can pick it up. On top of that, there are 8 other groups that are offering builds which means you can just switch.
I hardly ever write Java for work anymore, but the situation has inspired me to start looking into .net for the first time since college. Unfortunately, the ASP.net ecosystem on Linux is still a bit lacking compared to JavaEE (or is it JakartaEE yet?).
I'm surprised nobody mentioned Kotlin. It's similar but better, simple enough that reading/writing code is close to pseudocode. Google has moved towards officially supporting Kotlin instead of Java for Android development.
What do you mean by "instead"? It seems to me they support both languages as equals (the Android documentation contains examples in both languages) and have no plans of ditching Java.
”Today we’re announcing another big step: Android development will become increasingly Kotlin-first. Many new Jetpack APIs and features will be offered first in Kotlin. If you’re starting a new project, you should write it in Kotlin”
“Just use Kotlin” doesn’t help for the licensing issue, though, if you keep using Oracle’s JVM.
I know of companies that are paying because too much money is on the line.
My good friend is a senior Oracle sales person and he felt like they stabbed him in the back when they did it. He spent years developing good relationships and now this.
Yes. Goodbye, Java. It was a fun ride. Given dead end for iOS and Oracle’s licensing strategy, I will use compile-to-native languages for all new projects.
the tl;dr is that there are multiple OpenJDK vendors now, Oracle just happens to charge for their JDK distribution, but you can choose from several vendors (Azul, Red Hat, IBM, AdoptOpenJDK, Amazon Correto, etc)
Im interested very much in this subject also , what is the future of java .
as java dev for 15 years i don't know what will be with java in about 10 years .
There's absolutely no reason to pay for Oracle's JDK unless you want Oracle's support.
It was probably intentional, but Oracle really fucked up the marketing on this change and as a result a bunch of FUD has been spread throughout the Java ecosystem.