[Java] 에러 해결 Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactoryat org.apache.commons.httpclient.HttpClient.<clinit>(HttpClient.java:66)
2022. 5. 3. 23:28문제/에러
common-httpclient-3.1.jar 종속성을 추가한 후, 아래의 소스코드를 실행하려고 할 때 아래의 에러 발생.
HttpClient client = new HttpClient();
************** Start *********************
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
at org.apache.commons.httpclient.HttpClient.<clinit>(HttpClient.java:66)
at test.tset.main(tset.java:42)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 2 more
원인
commons-logging jar 파일이 없어서 발생한 에러이다. org.apache.commons.httpclient.HttpClient 프레임워크 사용 시, commons-logging jar 파일이 필요하다.
해결방안
아래의 commons-logging jar파일을 이클립스(혹은 다른 IDE)에 등록해주자.
(파일 출처 : http://www.java2s.com/Code/Jar/c/Downloadcommonslogging1211jar.htm)
등록하는 방법 -> 아래의 블로그 참고
[Eclipse] 프로젝트에 jar 파일 추가하는 방법 (자바 라이브러리 추가)
목차 0. jar파일 이란? - JAR(Java Archive, 자바 아카이브)는 여러 개의 자바 클래스 파일과, 클래스들이 이용하는 관련 리소스(텍스트, 그림 등) 및 메타데이터를 하나의 파일로 모아서 자바 플랫폼
veneas.tistory.com
참고자료
https://stackoverflow.com/questions/1776415/apache-httpclient-throws-a-noclassdeffounderror