A frequent question is: "Can I use JDeveloper 12.2.1.4 to write code for Java 11 or Java 17?"
The Answer: Not recommended.
Note: If you need to develop for Jakarta EE / Java EE 8+ or run on Java 11/17, you should look at Oracle JDeveloper 12.2.1.4's successor tools, such as Oracle WebLogic Server 14c or migrating to Apache NetBeans/IntelliJ IDEA combined with WebLogic plugins. jdeveloper 12.2.1.4 java version
java.lang.NoClassDefFoundError: javax/xml/bind/JAXBContext
Cause: Using JDK 9 or higher.
Solution: Switch to JDK 8.
Oracle ADF, the core framework of JDeveloper, relies heavily on internal JDK APIs that were deprecated and removed in JDK 9 and later. For example, ADF’s binding layer and the Oracle XML parser use com.sun.* and sun.* packages. These packages are no longer accessible in modular JDKs without specific command-line flags, and even with flags, stability is not guaranteed. A frequent question is: "Can I use JDeveloper 12
JDeveloper 12.2.1.4 was released in 2017 as a maintenance release of the 12c family. It predates the JDK 11 module system and the removal of certain internal APIs. ADF 12.2.1.4 relies heavily on Java EE 6/7 features and specific JDK 8 internals (e.g., com.sun.xml.internal.ws.*). Running on newer JDKs results in:
Even if you installed the bundled version, you might want to point JDeveloper to a different JDK 8 update on your system (e.g., you have 1.8.0_301 installed globally). Note: If you need to develop for Jakarta
To check or change the JDK version used by the IDE: