Java
fromMedium
1 day agoJava 25 for Scala Services: Production Impact Report
Migrating Scala services to Java 25 using compact object headers and G1 string deduplication reduced heap usage for workloads with many repetitive strings.
The TornadoVM project recently reached version 2.0, a major milestone for the open-source project that aims to provide a heterogeneous hardware runtime for Java. This release is likely to be of particular interest to teams developing LLM solutions on the JVM. The project automatically accelerates Java programs on multi-core CPUs, GPUs, and FPGAs. It does not replace existing JVMs, but instead adds the capability of offloading Java code to the backends,
Announced December 10, the deal enables Java platform provider Azul to offer faster, more efficient, more secure, and more cost-effective deployments in the Java application stack, Azul said. The company said the combination of Azul and Payara addresses pressing challenges enterprises face today: accelerating application modernization, achieving cloud-native agility, and reducing dependencies on proprietary platforms. With an integrated offering, users are provided with a unified, enterprise-grade Java platform based on open-source that can support an organization's full Java fleet
If you've encountered SSL certificate errors while trying to download Maven dependencies from GitHub Packages, you're not alone. The error typically looks something like this: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException:unable to find valid certification path to requested target This happens because Java maintains its own truststore (cacerts file) that contains trusted SSL certificates. If GitHub's certificate isn't in your Java truststore, your build tool (Maven/Gradle) will refuse to connect.
This report summarizes the InfoQ Java editorial team's current perspective on the adoption of technology and emerging trends within the Java space. We focus on Java, the language, as well as related languages such as Kotlin and Scala, the Java Virtual Machine (JVM), and Java-based frameworks and utilities. We discuss trends in core Java, including the adoption of new Java versions, as well as the evolution of frameworks such as the Spring Framework, Jakarta EE, Quarkus, Micronaut, Helidon, and MicroProfile.
The Java Virtual Machine (JVM) is a marvel of engineering, optimized for long-running, high-performance applications. Its just-in-time (JIT) compiler analyzes code as it runs, making sophisticated optimizations to deliver incredible peak performance. But this strength becomes a weakness in a serverless model. When a Lambda function starts cold, the JVM must go through its entire initialization process: loading classes, verifying bytecode and beginning the slow warm-up of the JIT compiler. This can take several seconds - an eternity for a latency-sensitive workflow.
The JUnit team has released JUnit 6.0.0 (GA on September 30, 2025), unifying version numbers across Platform, Jupiter, and Vintage and raising the minimum to Java 17 (and Kotlin 2.2 for Kotlin test code). The update adds native support for Kotlin tests, a new API with fail-fast execution in the ConsoleLauncher, built-in Java Flight Recorder (JFR) listeners, adoption of JSpecify nullability across modules, and a switch to FastCSV for CSV-driven parameterized tests.
Version 8.1.0 of the Regression Test Harness for the JDK, , has been released and ready for integration in the JDK. The most significant changes are: improvements in the logging format and order relative to agents, actions and test-related execution points; and the XAUTHORITY environment variable is now preserved when launching tests on Unix-like platforms. More details on this release may be found in the release notes.
Java 25 includes updates aimed at applications leveraging AI capabilities. According to Arnal Dayaratna, research vice president for software development at IDC, "As Java embarks on its fourth decade, it continues to deliver features to help ensure that applications, including those powered by and integrated with AI capabilities, will be highly efficient and scalable in hardware platforms." These enhancements support developers in building applications that can integrate machine learning and AI frameworks more effectively.
JEP 527, Post-Quantum Hybrid Key Exchange for TLS 1.3, has been elevated from its JEP Draft 8358541 to Candidate status. This JEP proposes to enhance the implementation of RFC 8446, Transport Layer Security (TLS) Protocol Version 1.3, using the Hybrid Key Exchange in TLS 1.3 specification, currently being drafted by the Internet Engineering Task Force (IETF), used in conjunction with JEP 496, Quantum-Resistant Module-Lattice-Based Key Encapsulation Mechanism, delivered in JDK 24.
Records in Java are a newer kind of class for holding data. Instead of writing boilerplate code for constructors, accessors, equals(), hashCode(), and toString(), you just declare the fields and let the Java compiler handle the rest. This article introduces you to Java records, including examples of basic and advanced use cases and a few programming scenarios where you should not use them.