로딩
요청 처리 중입니다...

71. [Apache Tomcat] No Such Method, 또는 NoClassDefFoundError 해결법

 71. [Apache Tomcat] No Such Method, 또는 NoClassDefFoundError 해결법

이번 포스트에서는 아파치 톰캣에서 가끔씩 보이는 에러인 No Such Method 에러, 혹은 No Class Def Found 에러에 대한 해결법에 대해서 알아볼 것이다. 자주 보이지는 않지만, 원인이 뭔지 모르면 한참 헤매게 되는 에러다.

일단 에러 출력 화면은 아래와 같다. NoClassDefFoundError 가 출력될 때도 있고, No Such Method 에러가 출력될 때도 있다.

왜 두 에러가 번갈아 나오는지는 모르겠지만, 에러의 이유는 명확했다. 위와 같이 톰캣 내의 라이브러리 디렉터리에 중복되는 jar 파일들을 한꺼번에 넣어놨기 때문이다.

여러 개의 jar 가 import 되고, 그 중에서 어느 jar 버전의 함수를 사용해야 하는지 인식하지 못하는 에러로 추측된다. 절대로 저렇게 라이브러리를 계속 넣지는 말자.

매우 좋지 않은 개발 습관이다. 라이브러리 버전 관리를 명확하게 하는 것이 좋다.

즉, 중복되는 버전의 라이브러리를 삭제해주면 문제는 해결된다. 필자의 경우에...