본문 바로가기
개발/JAVA

[JAVA] java.lang.NoSuchMethodError: org.apache.logging.log4j.Logger.error(Ljava/lang/String;Ljava/lang/Object;)V]

by zuzuu 2022. 3. 25.
반응형

 

공통 사용되는 기능을 라이브러리로 만들었다.
이 공통 기능을 모아둔 프로젝트의 pom.xml에는  log4j-api.jar를 선언하였고, 이를 이용하여 log를 남겼다.
ex) log.error("에러 발생");, log.debug("처리 완료");
 
하지만 다른 프로젝트에서 공통 라이브러리를 사용하니 로그를 남기는 부분에서 아래와 같은 에러가 발생하였다.
Servlet.service() for servlet [appServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: org.apache.logging.log4j.Logger.error(Ljava/lang/String;Ljava/lang/Object;)V] with root cause
java.lang.NoSuchMethodError: org.apache.logging.log4j.Logger.error(Ljava/lang/String;Ljava/lang/Object;)V

 


원인은 공통 라이브러리와 이를 사용하는 프로젝트의 log4j-api.jar 버전이 달랐기 때문!

(공통 라이브러리는 2.17.1버전을 사용 중이였고, 다른 프로젝트는 2.3.2를 사용 중이였음)

라이브러리 버전을 맞춰서 해결하였다.

 

 

 

 

728x90
반응형

댓글