Skip to content

Commit 26741d8

Browse files
committed
Register SpringApplication on ReflectionHints for binding
Closes gh-31534
1 parent 55bb921 commit 26741d8

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

spring-boot-project/spring-boot/src/main/java/org/springframework/boot/SpringApplication.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@
3333
import org.apache.commons.logging.LogFactory;
3434

3535
import org.springframework.aot.AotDetector;
36+
import org.springframework.aot.hint.RuntimeHints;
37+
import org.springframework.aot.hint.RuntimeHintsRegistrar;
3638
import org.springframework.beans.BeansException;
3739
import org.springframework.beans.CachedIntrospectionResults;
3840
import org.springframework.beans.factory.config.BeanDefinition;
@@ -45,6 +47,7 @@
4547
import org.springframework.beans.factory.support.DefaultListableBeanFactory;
4648
import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
4749
import org.springframework.boot.Banner.Mode;
50+
import org.springframework.boot.context.properties.ConfigurationPropertiesReflectionHintsRegistrar;
4851
import org.springframework.boot.context.properties.bind.Bindable;
4952
import org.springframework.boot.context.properties.bind.Binder;
5053
import org.springframework.boot.context.properties.source.ConfigurationPropertySources;
@@ -1390,4 +1393,14 @@ public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory)
13901393

13911394
}
13921395

1396+
static class SpringApplicationRuntimeHints implements RuntimeHintsRegistrar {
1397+
1398+
@Override
1399+
public void registerHints(RuntimeHints hints, ClassLoader classLoader) {
1400+
ConfigurationPropertiesReflectionHintsRegistrar.processConfigurationProperties(SpringApplication.class,
1401+
hints.reflection());
1402+
}
1403+
1404+
}
1405+
13931406
}

spring-boot-project/spring-boot/src/main/resources/META-INF/spring/aot.factories

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ org.springframework.boot.env.PropertySourceRuntimeHints,\
44
org.springframework.boot.json.JacksonRuntimeHints,\
55
org.springframework.boot.logging.java.JavaLoggingSystemRuntimeHints,\
66
org.springframework.boot.logging.logback.LogbackRuntimeHints,\
7+
org.springframework.boot.SpringApplication.SpringApplicationRuntimeHints,\
78
org.springframework.boot.WebApplicationType.WebApplicationTypeRuntimeHints
89

910
org.springframework.beans.factory.aot.BeanFactoryInitializationAotProcessor=\

0 commit comments

Comments
 (0)