From 9d16167a4dfdcd6d12846d3cbdb0e8b4d1a3de98 Mon Sep 17 00:00:00 2001 From: NeatGuyCoding <15627489+NeatGuyCoding@users.noreply.github.com> Date: Sat, 11 Oct 2025 11:37:00 +0800 Subject: [PATCH] bugfix: the non-pattern package prefix check uses packageName.startsWith(basePackage) which incorrectly treats "com.example2.foo" as a subpackage of "com.example" Signed-off-by: NeatGuyCoding <15627489+NeatGuyCoding@users.noreply.github.com> --- .../springframework/context/index/CandidateComponentsIndex.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-context/src/main/java/org/springframework/context/index/CandidateComponentsIndex.java b/spring-context/src/main/java/org/springframework/context/index/CandidateComponentsIndex.java index bf8c9f1bc296..5b48c6cc4c21 100644 --- a/spring-context/src/main/java/org/springframework/context/index/CandidateComponentsIndex.java +++ b/spring-context/src/main/java/org/springframework/context/index/CandidateComponentsIndex.java @@ -150,7 +150,7 @@ private static boolean matchPackage(String basePackage, String packageName) { return pathMatcher.match(basePackage, packageName); } else { - return packageName.startsWith(basePackage); + return packageName.equals(basePackage) || packageName.startsWith(basePackage + "."); } }