Spring 可以使用s解析@Configuration
类ClassReader
假设我们有以下场景
我们有一个具有多个@Bean
定义的自动配置类
其中一个@Bean
具有所有条件,而第二个@Bean
具有@ConditionalOnClass
并且该类不存在于类路径中
@Configuration
class CustomConfiguration {
@Bean
@ConditionalOnClass(String.class)
String knownClass() {
return "Hello";
}
@Bean
@ConditionalOnClass(MissingClass.class)
MissingClass secondBean() {
return new MissingClass();
}
}
在这种情况下,我有几个问题
- Spring Boot AutoConfiguration 是否将第一个 bean 注册到
ApplicationContext
? - 如果 (1) 为真,我在第一个
@Bean
方法中的断点是否会在调试期间被命中 - 如果 (2) 为真,
*AutoConfiguration
该类如何加载到 JVM 中,因为该类将引用其他类(来自第二个 @Bean),这些类在类加载时无法解析 - 如果 (2) 为假,spring 是否在运行时仅使用第一个
@Bean
方法生成一个类并调用该方法?
谢谢