spring 是否在上下文创建期间为惰性 bean 解析 属性 占位符?

Does spring resolve property placeholders for lazy beans during context creation?

我有一个类似 spring xml 上下文文件的 bean 定义

<bean id="idFilter" class="some.package.app.filter.IdFilter" lazy-init="true">
    <constructor-arg type="java.lang.String" value="${id.start}"/>
</bean>

spring 是否尝试在构建上下文时解决 属性 ${id.start}

我假设因为 idFilter 是延迟加载的,所以 属性 id.start 在使用 bean 之前不会尝试解析。

对吗?

在仔细调试代码后,我发现在创建 bean 定义时,即使对于惰性 bean,占位符也会被解析。

请注意,bean 定义不是 bean 实例化。

因此,如果未找到占位符,则无论 bean 是懒惰的还是急切的,都会为所有 bean 抛出错误