Теперь я пытаюсь создать функцию службы сообщений с помощью kafka для использования spring-cloud-stream-bind-kafka, но это не сработало.
Configuration:
весенняя загрузка 1.4.2
build.gradle:
compile "org.springframework.cloud:spring-cloud-stream:2.0.1.RELEASE"
compile "org.springframework.cloud:spring-cloud-stream-binder-kafka:2.0.1.RELEASE"
code:
@EnableBindings(MessagePublish.class)
class MessageConfiguration {
}
interface MessagePublish {
@Output("test")
MessageChannel publish();
}
class TestService {
@Autowired
MessagePublish messagePublish;
public void doSomething() {
// do something
messagePublish.publish().send(MessageBuilder.withPayload("test").build());
}
}
Это не удалось, когда я запускаю проект с этим журналом ошибок
Caused by: org.springframework.boot.autoconfigure.condition.OnBeanCondition$BeanTypeDeductionException: Failed to deduce bean type for org.springframework.cloud.stream.config.BindingServiceConfiguration.bindingService
....
Caused by: java.lang.ClassNotFoundException: org.springframework.integration.support.converter.ConfigurableCompositeMessageConverter
Я подозреваю, что моя версия весенней загрузки. Это такая низкая версия.
Я думаю, что spring-cloud-stream-binder-kafka нельзя использовать в версии Spring Boot 2.0 или по другим причинам.
Я не знаю, как мне поступить и как мне разобраться в этой ситуации...
Если вы дадите мне небольшой совет, я очень ценю вас.
Я также хочу использовать весеннюю загрузку 2, но не могу (возможно ..). Потому что этот проект действительно огромное наследие

Если вы используете версию Spring Boot 1.4.x, вам следует использовать выпуск Spring Cloud Camden.
https://github.com/spring-projects/spring-cloud/wiki/Spring-Cloud-Camden-Release-Notes
В частности, вы должны использовать следующие версии:
compile "org.springframework.cloud:spring-cloud-stream:1.1.2.RELEASE"
compile "org.springframework.cloud:spring-cloud-stream-binder-kafka:1.1.2.RELEASE"
Эти версии очень старые и больше не поддерживаются. Даже Boot 1.5 скоро перестанет поддерживаться.
Я настоятельно рекомендую Spring Boot 2, слишком много изменений. Я предлагаю вам сгенерировать pom, начиная с start.spring.io для правильных зависимостей и версий.