본문 바로가기
JAVA/Spring Boot

LoggerFactory is not a Logback LoggerContext but Logback is on the classpath 해결방법(Spring + embedded redis)

by 소라둥이 2020. 8. 4.

해당 라이브러리를 빌드 후 서버를 실행하면 아래와 같은 에러가 발생한다.

	compile group: 'it.ozimov', name: 'embedded-redis', version: '0.7.3'

스프링에 내장 레디스 적용 후 서버 시작 불가

 

이전 버전인 0.7.2를 사용하면 정상구동된다.

	compile group: 'it.ozimov', name: 'embedded-redis', version: '0.7.2'

 

0.7.2 버전 정상동작

 

 

 

0.7.2 버전과 0.7.3 버전의 라이브러리를 확인해보니

0.7.2
0.7.3

0.7.3 버전에 org.slf4j가 추가된 것을 볼 수 있다.

위에서 발생한  "LoggerFactory is not a Logback LoggerContext but Logback is on the classpath"

Spring boot 내장 slf4j와 충돌해서 발생한 에러임이 확인되었다.

 

해당 오픈소스 github를 찾아가보니 이미 해당 문제에 관한 pull request가 등록되어있었다.

 

slf4j 삭제 

 

하지만 아직까지 merge되지 않아 0.7.3 버전 사용 시 slf4j가 같이 딸려오므로 컴파일 빌드 시 제외해주어야 한다.

	compile ('it.ozimov:embedded-redis:0.7.3') {
		exclude group: "org.slf4j", module: "slf4j-simple"
	}

 

변경 후 서버 구동 시 정상 동작함을 확인할 수 있다.