Skip to content

Commit e87e03c

Browse files
committed
Refine ConfigurationClassPostProcessor behavior in native images
This commit refines ConfigurationClassPostProcessor behavior in native images by skipping configuration classes enhancement instead of raising an error. See spring-attic/spring-native#248 for more details. Closes gh-26236
1 parent 194cebd commit e87e03c

File tree

1 file changed

+1
-5
lines changed

1 file changed

+1
-5
lines changed

spring-context/src/main/java/org/springframework/context/annotation/ConfigurationClassPostProcessor.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -427,15 +427,11 @@ else if (logger.isInfoEnabled() && beanFactory.containsSingleton(beanName)) {
427427
configBeanDefs.put(beanName, (AbstractBeanDefinition) beanDef);
428428
}
429429
}
430-
if (configBeanDefs.isEmpty()) {
430+
if (configBeanDefs.isEmpty() || IN_NATIVE_IMAGE) {
431431
// nothing to enhance -> return immediately
432432
enhanceConfigClasses.end();
433433
return;
434434
}
435-
if (IN_NATIVE_IMAGE) {
436-
throw new BeanDefinitionStoreException("@Configuration classes need to be marked as " +
437-
"proxyBeanMethods=false. Found: " + configBeanDefs.keySet());
438-
}
439435

440436
ConfigurationClassEnhancer enhancer = new ConfigurationClassEnhancer();
441437
for (Map.Entry<String, AbstractBeanDefinition> entry : configBeanDefs.entrySet()) {

0 commit comments

Comments
 (0)