如何延迟 Spring Cloud Stream StreamListener 的初始化?

How to delay initialization of Spring Cloud Stream StreamListener?

我在 StreamListener 初始化时遇到问题。我无法解决我的问题。

我在我的项目中使用 Spring Cloud Stream Kafka 和 Spring 缓存。 Spring 缓存在SmartLifeCycle 的start() 方法之后初始化。但是 StreamListener 在 SmartLifeCycle 的 start() 方法之前开始使用数据。因此,我无法在 StreamListener 开始使用数据之前完成缓存初始化,这给我带来了问题。

有什么方法可以延迟 StreamListener 处理或延迟 StreamListener bean 初始化吗?

您可以将绑定的 autoStartup 设置为 false,稍后使用 BindingsEndpoint bean 启动绑定。

参见