From f0cf7f19f6d90d156f4e35fe50d7ca743bad9f34 Mon Sep 17 00:00:00 2001 From: Brian Clozel Date: Fri, 7 Nov 2025 14:01:51 +0100 Subject: [PATCH] Fix multi-release JAR issue with VirtualThreadDelegate This commit ensures that both `VirtualThreadDelegate` implementations expose the same public API. If not, JAR verification fails with the following message: ``` jar --validate --file spring-core-6.2.13-SNAPSHOT.jar entry: META-INF/versions/21/org/springframework/core/task/VirtualThreadDelegate.class, contains a class with different api from earlier version ``` Fixes gh-35773 --- .../org/springframework/core/task/VirtualThreadDelegate.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/spring-core/src/main/java21/org/springframework/core/task/VirtualThreadDelegate.java b/spring-core/src/main/java21/org/springframework/core/task/VirtualThreadDelegate.java index be6c83082af..04de2963911 100644 --- a/spring-core/src/main/java21/org/springframework/core/task/VirtualThreadDelegate.java +++ b/spring-core/src/main/java21/org/springframework/core/task/VirtualThreadDelegate.java @@ -30,6 +30,10 @@ final class VirtualThreadDelegate { private final Thread.Builder threadBuilder = Thread.ofVirtual(); + public VirtualThreadDelegate() { + + } + public ThreadFactory virtualThreadFactory() { return this.threadBuilder.factory(); }