diff --git a/src/main/java/io/lettuce/core/internal/LettuceClassUtils.java b/src/main/java/io/lettuce/core/internal/LettuceClassUtils.java index 0e88fcf38c..087aae36a6 100644 --- a/src/main/java/io/lettuce/core/internal/LettuceClassUtils.java +++ b/src/main/java/io/lettuce/core/internal/LettuceClassUtils.java @@ -101,24 +101,13 @@ private static Class forName(String className, ClassLoader classLoader) throw } /** - * Return the default ClassLoader to use: typically the thread context ClassLoader, if available; the ClassLoader that - * loaded the ClassUtils class will be used as fallback. + * This method ensures that the same ClassLoader strategy is consistently applied during + * both class existence detection and actual class loading. * * @return the default ClassLoader (never null) - * @see java.lang.Thread#getContextClassLoader() */ private static ClassLoader getDefaultClassLoader() { - ClassLoader cl = null; - try { - cl = Thread.currentThread().getContextClassLoader(); - } catch (Throwable ex) { - // Cannot access thread context ClassLoader - falling back to system class loader... - } - if (cl == null) { - // No thread context class loader -> use class loader of this class. - cl = LettuceClassUtils.class.getClassLoader(); - } - return cl; + return LettuceClassUtils.class.getClassLoader(); } /**