Don't initialize containers during AOT processing

Fixes gh-41838
This commit is contained in:
Andy Wilkinson
2024-08-14 18:55:07 +01:00
parent 1d45016d8c
commit e7e5ed1508
2 changed files with 40 additions and 1 deletions

View File

@@ -85,7 +85,7 @@ class TestcontainersLifecycleBeanPostProcessor
@Override
public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
if (this.beanFactory.isConfigurationFrozen()) {
if (this.beanFactory.isConfigurationFrozen() && !isAotProcessingInProgress()) {
initializeContainers();
}
if (bean instanceof Startable startableBean) {
@@ -100,6 +100,10 @@ class TestcontainersLifecycleBeanPostProcessor
return bean;
}
private boolean isAotProcessingInProgress() {
return Boolean.getBoolean("spring.aot.processing");
}
private void initializeStartables(Startable startableBean, String startableBeanName) {
logger.trace(LogMessage.format("Initializing startables"));
List<String> beanNames = new ArrayList<>(getBeanNames(Startable.class));