diff --git a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/domain/EntityScanPackages.java b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/domain/EntityScanPackages.java index 4a17db7b295..e0c27c2cf1f 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/domain/EntityScanPackages.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/domain/EntityScanPackages.java @@ -148,7 +148,7 @@ public class EntityScanPackages { Collections.addAll(packagesToScan, tokenized); } for (Class basePackageClass : attributes.getClassArray("basePackageClasses")) { - addResolvedPackage(ClassUtils.getPackageName(basePackageClass), packagesToScan); + packagesToScan.add(this.environment.resolvePlaceholders(ClassUtils.getPackageName(basePackageClass))); } if (packagesToScan.isEmpty()) { String packageName = ClassUtils.getPackageName(metadata.getClassName()); @@ -158,10 +158,6 @@ public class EntityScanPackages { return packagesToScan; } - private void addResolvedPackage(String packageName, Set packagesToScan) { - packagesToScan.add(this.environment.resolvePlaceholders(packageName)); - } - } static class EntityScanPackagesBeanDefinition extends GenericBeanDefinition { diff --git a/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/domain/EntityScannerTests.java b/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/domain/EntityScannerTests.java index 22300e2e26f..36c2cc31600 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/domain/EntityScannerTests.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/domain/EntityScannerTests.java @@ -25,7 +25,6 @@ import javax.persistence.Entity; import org.junit.jupiter.api.Test; import org.mockito.ArgumentCaptor; -import org.springframework.boot.autoconfigure.data.jpa.city.City; import org.springframework.boot.autoconfigure.domain.scan.a.EmbeddableA; import org.springframework.boot.autoconfigure.domain.scan.a.EntityA; import org.springframework.boot.autoconfigure.domain.scan.b.EmbeddableB; @@ -124,13 +123,13 @@ class EntityScannerTests { void scanShouldScanCommaSeparatedPackagesInPlaceholderPackage() throws Exception { AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(); TestPropertyValues.of( - "com.example.entity-package=org.springframework.boot.autoconfigure.domain.scan,org.springframework.boot.autoconfigure.data.jpa.city") + "com.example.entity-package=org.springframework.boot.autoconfigure.domain.scan.a,org.springframework.boot.autoconfigure.domain.scan.b") .applyTo(context); context.register(ScanPlaceholderConfig.class); context.refresh(); EntityScanner scanner = new EntityScanner(context); Set> scanned = scanner.scan(Entity.class); - assertThat(scanned).containsOnly(EntityA.class, EntityB.class, EntityC.class, City.class); + assertThat(scanned).containsOnly(EntityA.class, EntityB.class); context.close(); }