I am working on migrating my java application from Oracle JDK to adoptOpenJdk.So what changes would be required to migrate to AdoptOpenJdk.
-
2Ever heard of write once, run anywhere? – Scary Wombat Feb 05 '20 at 07:23
-
I can't think of any reason you'd need to make *ANY* changes to your application. – FoggyDay Feb 05 '20 at 07:25
-
But i have been asked to explore what changes would be required for migration. – Vaidehi Chandel Feb 05 '20 at 07:28
-
Im afraid you will have to use the OpenJDK and see if all the libs/jars you are using are supported in the new OpenJDK. if not you will need to look for the equivalent – Danny Fried Feb 05 '20 at 07:44
-
Can you please tell me what are the major diffrences between oracle jdk and AdoptOpenJdk? – Vaidehi Chandel Feb 05 '20 at 07:55
1 Answers
Feature parity
Oracle has committed to keeping their Oracle JDK product at feature parity with the codebase in the OpenJDK project. So any Java app running on Oracle JDK should run on any other platform built faithfully from the OpenJDK codebase. You need not make any changes to your Java programming.
Be aware that OpenJDK only provides source code. For binaries and installers, you must look elsewhere. Several companies provide such binaries and installers. One of those is a joint venture known as AdoptOpenJDK. Others include Azul Systems, Red Hat/IBM, SAP, BellSoft, Amazon, Oracle, and Pivotal.
Most of the vendors, including Oracle, provide JVMs using the HotSpot optimizing compiler and runtime. AdoptOpenJDK (at least) offers you a choice to obtain a build using the OpenJ9 optimizing runtime instead. Your Java app should run well on either HotSpot or OpenJ9, but you may see a different performance profile.
See my Answer to a similar Question.
Be aware that the current licensing terms for the Oracle JDK product require that for use in production you must pay a fee. That product is free-of-cost only for non-production use such as development and testing. If you do not want to pay such a fee to Oracle, use their unsupported product at JDK.java.net, or use a JVM provided by one of the other vendors as shown in this flowchart.

- 303,325
- 100
- 852
- 1,154