From e6d83d61eade6dee223757d149a4df9650752a55 Mon Sep 17 00:00:00 2001 From: Matthias Sohn <matthias.sohn@sap.com> Date: Tue, 6 Feb 2024 10:23:37 +0100 Subject: Don't use localized String during JVM shutdown During shutdown the JGitText class may already be unloaded causing NoClassDefFoundError. Bug: jgit-17 Change-Id: I657b5a508efc8b3778be346d640f4e4d69abd5c5 --- org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java | 1 - org.eclipse.jgit/src/org/eclipse/jgit/internal/util/ShutdownHook.java | 4 +++- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'org.eclipse.jgit/src') diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java index b7175508ee..a84b9d0dc7 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java @@ -743,7 +743,6 @@ public class JGitText extends TranslationBundle { /***/ public String shortReadOfOptionalDIRCExtensionExpectedAnotherBytes; /***/ public String shortSkipOfBlock; /***/ public String shutdownCleanup; - /***/ public String shutdownCleanupFailed; /***/ public String shutdownCleanupListenerFailed; /***/ public String signatureVerificationError; /***/ public String signatureVerificationUnavailable; diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/util/ShutdownHook.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/util/ShutdownHook.java index d6c5a81454..f52025fd6b 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/util/ShutdownHook.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/util/ShutdownHook.java @@ -82,7 +82,9 @@ public enum ShutdownHook { }).get(30L, TimeUnit.SECONDS); } catch (RejectedExecutionException | InterruptedException | ExecutionException | TimeoutException e) { - LOG.error(JGitText.get().shutdownCleanupFailed, e); + // message isn't localized since during shutdown there's no + // guarantee which classes are still loaded + LOG.error("Cleanup during JVM shutdown failed", e); //$NON-NLS-1$ } runner.shutdownNow(); } -- cgit v1.2.3