diff --git a/org.springframework.core/src/main/java/org/springframework/util/ClassUtils.java b/org.springframework.core/src/main/java/org/springframework/util/ClassUtils.java index 269d86b90b6..638f8333e1a 100644 --- a/org.springframework.core/src/main/java/org/springframework/util/ClassUtils.java +++ b/org.springframework.core/src/main/java/org/springframework/util/ClassUtils.java @@ -948,7 +948,7 @@ public abstract class ClassUtils { while (clazz != null) { Class[] ifcs = clazz.getInterfaces(); for (Class ifc : ifcs) { - if (!interfaces.contains(ifc) && Modifier.isPublic(ifc.getModifiers()) && + if (!interfaces.contains(ifc) && (classLoader == null || isVisible(ifc, classLoader))) { interfaces.add(ifc); }