Execution failed for task ':compileJava'.
Could not resolve all files for configuration ':compileClasspath'.
Could not find org.springframework.cloud:spring-cloud-starter-netflix-ribbon:.
Required by:
root project :
위 오류가 발생했다 .
Spring Cloud 의 로드밸런싱에 대해 공부를 하던 중 발생한 문제이다.
로드밸런싱은 eureka client 들 중 하나를 선택할 수 있게 해주는 기술이다.
하나를 고르는 알고리즘 방식 중 라운드로빈 방식이 default로 설정되어있다.
라운드로빈 방식 발고 라른 방식의 알고리즘 설정을 하기 위해 chatgpt에 검색하여 아래의 코드를 추가했다.
yaml 파일에 추가한 설정
product-service:
ribbon:
NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule
build.gradle에 추가한 코드
implementation 'org.springframework.cloud:spring-cloud-starter-netflix-ribbon'
해당 오류는 build.gradle을 통해 의존성을 가지고 올 수 없을때 발생한다.
의존성을 가지고 올수 없는 이유는 여러가지가 있는데 그 중 가장 대표적인 이유는 해당 의존성이 spring boot 버전과 맞지 않는 경우가 크다.
ribbon과 관련하여 내용을 최대한 찾아보았다.

더이상 spring Cloud LoadBalancer 내에서 알고리즘을 사용할 수 있도록 유도하고 있다.

의존성을 사용할때는 사용해보기전에 해당 의존성이 사용되고 있는것인지 확인해볼 필요가 있다.