1
votes

My question is about Spring-Kafka and Spring Cloud compatibility.

I am using the following versions:

The compatibility between Spring-Kafka and Spring Boot was asked in a different SO question a few days ago. The Spring-Kafka project page was updated with more details about the compatibility. The project site states the following:

All users with brokers >= 0.10.x.x (and all spring boot 1.5.x users) are recommended to use spring-kafka version 1.3.x

The compatibility matrix for Spring Cloud Stream and Spring-Kafka states that:

Spring Cloud Stream 1.2.x is compatible with Spring-Kafka 1.2.x, 1.1.x.

The Spring-Kafka project page recommends me to upgrade to 1.3.X, but my version of Spring Cloud Stream is no compatible with Spring-Kafka 1.3.X.

I would prefer to upgrade my Spring-Kafka version to 1.3.8. But I do not want to break Spring Cloud Stream.

Does anyone have experience with using a newer version of Spring-Kafka with an older version of Spring Cloud Stream?

1

1 Answers

1
votes

Spring Boot 1.5.2 is extremely old (early 2017). The current Boot 1.5.x version is 1.5.18 (released today).

If you start a new Spring Boot 1.5 project using Initializr You get

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.18.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
    <spring-cloud.version>Edgware.SR5</spring-cloud.version>
    <spring-kafka.version>1.3.8.RELEASE</spring-kafka.version>
</properties>

Edgware.SR5 pulls in the Ditmars Spring Cloud Stream release train (1.3.3) and, as you can see, spring-kafka 1.3.8 is used too.

So I would recommend you upgrade everything to get current.