Axon 框架:没有符合条件的 EventScheduler 类型的 bean

Axon framework: No qualifying bean of type EventScheduler

所以我尝试像这样在我的 saga class 中自动装配 EventScheduler。

@Saga
class ConfirmRegistrationSaga {
  @Autowired
  @Transient
  private lateinit var eventScheduler: EventScheduler
  ...
}

但它给了我这个错误

No qualifying bean of type 'org.axonframework.eventhandling.scheduling.EventScheduler' available: expected at least 1 bean which qualifies as autowire candidate.

这是怎么回事?我需要配置一些东西才能使用 evenScheduler 吗?我使用 axon-spring-boot-starter 版本 4.1.2 和 spring-boot 版本 2.3.3

是的,如果您不使用 AxonServer,我相信您必须自己配置 EventScheduler Bean。 尝试将此添加到您的 @Configuration,例如:

@Bean
public SimpleEventSchedulerFactoryBean simpleEventSchedulerFactoryBean() {
  return new SimpleEventSchedulerFactoryBean();
}

只是补充说,Axon 为 EventScheduler 提供了不同的实现,如您所见 here