Oracle today announced the availability of Java 25, which provides capabilities that make it simpler to build both artificial intelligence (AI) applications.
At the same time, Oracle also pledged to provide long-term support (LTS) for Java 25 for the next eight years.
Chad Arimura, vice president of developer relations for Oracle, said this edition of Java makes it clear that Java will continue to be a de facto enterprise standard for building both existing and next-generation applications.
For example, Java 25 provides early access to a vector application programming interface (API) to optimize computations as they are compiled at runtime. That capability will improve the performance of AI inference engines running on any supported processor architecture, noted Arimua.
At the same time, there is an updated preview of a capability that makes Java more uniform and expressive to make it simpler for AI applications to apply pattern matching, along with an update to a preview that simplifies concurrent programming by treating groups of related tasks running in different threads as a single unit of work. Application developers can now also share immutable data within and across threads in addition to accessing a preview of an API for stable values, which are objects that hold immutable data.
Those capabilities are critical for organizations building AI applications that need to run code in parallel, noted Arimura.
Moving beyond AI, Java 25 also has an API for key derivation functions, which are cryptographic algorithms for deriving additional keys from a secret key and other data. This provides a necessary building block for the support of hybrid public key encryption, which helps enable a smooth transition to quantum-safe encryption. There is also a preview of an API for encoding cryptographic objects. Those capabilities will be needed to ensure post-quantum encryption capabilities are embedded into Java applications, said Arimura.
Other additions include an ability to more easily import all the packages exported by a module to facilitate reuse of code, tools that enable developers to improve code safety and
reliability by enabling input validation and safe computations before code is explicitly invoked, support for compact Object Headers, which reduce the size of object headers to 64 bits on 64-bit processors.
There are also Method Timing and Tracing tools that enable developers to identify application performance bottlenecks, optimize code, and find the root causes of bugs and an experimental JDK Flight Recorder (JFR) that captures more accurate CPU-time profiling information
Java 25 also adds an ability to more easily create ahead-of-time caches with no loss of expressiveness, and ability to shift the collection of initial method execution profiles from production runs to training runs.
Finally, Compact Source Files and Instance Main Methods make the Java language more accessible to beginners and system and IT administrators alike. Students can write their first programs in a concise manner without needing to understand language features designed for large programs, while IT administrators who may not be Java experts can streamline the development of scripts and command-line utilities.
Oracle plans to provide quarterly security and performance updates until September 2028 under the Oracle No-Fee Terms and Conditions (NFTC). JDK 25 updates released after that date will be offered under the Java SE OTN License (OTN) planned until at least September 2033.
Oracle has been on a cadence to update Java every six months. Many organizations, however, are still running applications developed using versions of the venerable programming language, such as Java 8. The challenge now is not just using the latest version of Java to build the next generation of applications, but also returning a lot of the technical debt that has accumulated around multiple previous versions of Java applications that, hopefully, will be updated sooner rather than later.