Pewnie mogę sobie z tym poradzić za pomocą @Lazy lub wstrzykiwaniem przez setery, ale wolałbym to lepiej rozwiązać i poznać przyczynę.
Projekt się buduje (bez testów):
https://gitlab.com/namingexception/training-kafka
ale przy odpaleniu leci:
***************************
APPLICATION FAILED TO START
***************************
Description:
The dependencies of some of the beans in the application context form a cycle:
sendUpperCaseJob (field com.kafkatolowercasespring.core.service.kafka.KafkaMessageSender com.kafkatolowercasespring.core.job.SendUpperCaseJob.kafkaMessageSender)
┌─────┐
| kafkaMessageSender defined in file [C:\Users\pt\Documents\git2\kafka-tolowercase-spring\kafka-tolowercase-spring-core\target\classes\com\kafkatolowercasespring\core\service\kafka\KafkaMessageSender.class]
↑ ↓
| kafkaTemplate defined in class path resource [com/kafkatolowercasespring/core/config/KafkaProducerConfig.class]
↑ ↓
| producerFactory defined in class path resource [com/kafkatolowercasespring/core/config/KafkaProducerConfig.class]
└─────┘
kafkaMessageSender
rzeczywiście potrzebuje kafkaTemplate
a
kafkaTemplate
potrzebuje producerFactory
,
ale producerFactory
nie potrzebuje kafkaMessageSender
.
Czemu spring twierdzi, że potrzebuje?
Shalomscibi_92