我有一个@SpringBootApplication
,它的实现依赖于io.awspring.cloud:spring-cloud-aws-autoconfigure:2.4.4
,它包含类SQSAutoConfiguration
。这个autoconfiguration类在应用程序启动时启动,并使用SimpleMessageListenerContainerFactory
从Sping Boot 2.7.12更新到3.1.2,SQS处理不再工作。在Spring初始化过程之前和之后,使用gradle dependencies
工具和IntelliJ Spring工具窗口,我可以确认虽然spring-cloud-aws-autoconfigure
依赖仍然存在,但SQSAutoConfiguration
bean现在从Spring上下文中丢失,因此SimpleMessageListenerContainer
bean没有创建,因此SQS处理没有发生。
我的问题是-我有工具告诉我,在spring Boot 版本更改后,自动配置bean丢失了,但是我可以使用什么工具或技术来确定 * 为什么 * Spring不再包括这个bean。
1条答案
按热度按时间w46czmvw1#
如果你升级了Spring-boot,你也必须升级
io.awspring.cloud:spring-cloud-aws-autoconfigure
:Spring-boot 3.x需要Spring-cloud 3.x。完整的兼容性矩阵可在https://github.com/awspring/spring-cloud-aws#compatibility-with-spring-project-versions上获得
关于“确定Spring不再包含此bean的原因”的技术,一般来说,您可以在调试模式下检查Spring生成的autoconfiguration report。