UnsupportedClassVersionError: `<x>` has been compiled by a more recent version of the Java Runtime
How to fix the Java UnsupportedClassVersionError when building a Docker image for ksqlDB by switching to JDK 8.
How to fix the Java UnsupportedClassVersionError when building a Docker image for ksqlDB by switching to JDK 8.
Explores how to use Bean Validation annotations to enforce invariants on Java 14+ record types, ensuring data integrity for immutable objects like DTOs.
Explores how to enforce data validation rules on Java 14+ record types using the Bean Validation API (Hibernate Validator).
An overview of new features in LOG4J2, including structured messages, event logging, and improved diagnostic context.
Explains how to use Java 13 text blocks in test code while keeping main project code compatible with older Java versions like Java 8.
Explains how to use Java 13 text blocks in test code while maintaining main code compatibility with older Java versions.
A guide to setting up automatic Java code formatting in VS Code using the google-java-format tool and the RunOnSave extension.
Overview of new features in Java 13 for developers, including preview features for switch expressions and text blocks.
An overview of lightweight threads, concurrency models, and Project Loom for the Java Virtual Machine (JVM).
A developer's personal story about learning the critical importance of unit testing while refactoring a complex financial calculation library.
An introduction to Awaitility, a Java library for testing asynchronous and multi-threaded code, making tests concise and readable.
Explains advanced stubbing techniques and built-in answer strategies in the Mockito Java mocking library for unit testing.
A technical guide detailing the process and benefits of upgrading from Java 8 to newer versions, based on real-world experience.
A comprehensive guide to Java 13's new features, including text blocks, switch expressions, and migration considerations from earlier versions.
Explains how to use Application Class-Data Sharing (AppCDS) in Java 13 to improve JVM launch times and reduce memory footprint.
A developer announces that his JakartaOne conference session on using Quarkus for high-performance Java is now available online.
A developer's guide to implementing granular caching with Spring's RedisTemplate to cache individual items from a collection-based method.
Introducing ArchUnit, a Java library for testing and enforcing architectural rules and naming conventions in your codebase.
A comprehensive guide to the new switch expressions introduced as a preview feature in Java 13, covering syntax, usage, and improvements over traditional switch statements.
A proposal for a maturity model to classify Java tools and libraries based on their level of support for the Java Platform Module System (JPMS).