spring kafka 버전 호환성

연어는결국강으로·2023년 5월 5일
0

MSA

목록 보기
5/7

이 라이브러리는 버전호환성이 좀 구리다(?). 사용하는 스프링부트 버전과 잘 비교해봐야 한다. 아니면 빌드시 테스트에서 뻑이난다. 테스트를 걷어내고 돌리면 돌아갈까? 아직해보진 않았다.

https://spring.io/projects/spring-kafka

맨 왼쪽이 스프링 카프카의 버전이다. 단순히 버전을 맞추면 되는건지는 모르겠다. 나는 버전만 맞추는 걸로는 안되어서 공식문서를 봤다. 공식 문서에는 저렇게 버전호환성 표가 있고, 그 아래에 'To use 2.9.x with Boot 2.7.x; see Override Spring Boot Dependencies.' 이런 말이 써있었다. 음 2.7대 버전을 쓰면 의존성을 오버라이드 해라 이런말인듯하다.

링크를 타고 들어가면 의존성 설정에 관한 말이 있다. 뭐라는지 읽어보면, 스프링부트에서는 의존성 관리를 자동으로 처리해주니, kafka-clients나 kafka-streams를 사용하고자 하면 사용하고 있는 스프링부트의 버전에 호환되는 버전으로 kafka.version을 바꿔줘야 한다. 또한, spring for apache kafka의 다른 버전을 사용하고자 하면, spring-kafka.version 프로퍼티를 설정하면 된다. 라는 말인듯 하다.

나는 2.7.9를 사용하고 있어서 gradle을 이렇게 설정했다.

ext {
	set('kafka.version', '3.2.3')
	set('spring-kafka.version', '2.9.5')
}

dependencies {
	implementation 'org.springframework.kafka:spring-kafka'
	testImplementation 'org.springframework.kafka:spring-kafka-test'
}

하고 나니 잘 된다. 끝.

0개의 댓글