text/common

maven multi binding 문제 시 해결

hoonzii 2023. 10. 12. 14:30
반응형

회사에서 옛날에 만든 걸 리팩토링해보려다가 maven 옮겨오는 것부터 문제가 생겼다. 

 

spring 키려고 하니 자꾸 맨앞에 아래와 같은 오류가 생겼는데

해석하자면

" slf4j binding 하려고 보니 동일한 모듈이 여러 개라서 그중에 멀 쓸지 모르겠다. 내 맘대로 하나 쓴다? "

에러 메세지 이긴 한데 동작하는데 문제없지 않을까 싶다가도 글씨가 빨간색이니

이번 기회에 고치는 방법 알고가자 싶어서 정리하는 겸 적어본다.

 

우선 pom.xml 파일을 보면 dependency로 추가한 것 중 꼬인 게 분명 있다.

하지만 어떤 패키지가 뭘 가지고 있는지 어떻게 아냐?

 

  1. maven 설정이니 maven을 설치해준다.
    ( maven 설치 - ref. https://benggri.tistory.com/23)

  2. cmd창에서 해당 프로젝트 이동 (pom.xml 있는 위치로)

  3.  cmd창에 "mvn dependency:tree" 입력
    나 같은 경우엔 결과값을 text 형식 파일로 떨궈 보고 싶었기 때문에 mvn depency:tree > result.txt로 입력
  4. 문제가 되는 jar 파일 찾기

 

내 경우엔 reload4 j 어쩌구 저쩌구 였기 때문 문제가 되는 애 검색 (text 파일로 떨궈서 찾아야 하는 이유)

문제가 되는 모듈은 docx4j에서 사용하는 slf4j-reload4j 와 ch.qos.reload4j 가 문제니

ch.qos패키지의 reload4j 랑 slf4j 패키지의 reload4j 중 하나를 제거해주면 된다. 어디서? docx4j에서...

pom.xml의 dependency exclusion을 설정해 준다. 

처리 결과 문제가 깨끗이 사라짐~

반응형