2013-12-20 3 views
0

내 코드이 줄을 실행하면 :LogConfigurationException HttpClient를 사용하여

DefaultHttpClient httpclient = new DefaultHttpClient(); 

나는이 예외 받고 있어요 :

org.apache.commons.logging.LogConfigurationException : 클래스 org.apache.commons을. logging.impl.Log4JLogger가 로그를 구현하지 않습니다.

누군가 내가 어떻게 해결할 수 있는지 알고 있습니까? 어쩌면 중요하지 않을 수도 있지만 어쩌면 그렇습니다.하지만 앱은 Jira 용 플러그인이며 의존성을 위해 Maven을 사용하고 있습니다.

감사합니다.

편집 : stackTrace

편집 2 :
이는 락스에서은 OSGi 관련 될 수 있습니까?

OSGi 환경에서 commons-logging을 사용하려면 어떻게해야합니까? 여기에서

:
http://wiki.apache.org/commons/Logging/FrequentlyAskedQuestions

커먼즈 로깅을 염두에은 OSGi 설계되지 않았습니다. 이것이 OSGi 환경에서 commons-logging로 작업하기가 어려우므로 입니다.

LogFactory는 Log 구현을 이름으로로드합니다 ( Class.forName (String) 참조). 모든 번들 클래스 로더는 번들이 정의한 클래스 만 볼 수 있으므로 OSGi에서는 일반적으로 불가능합니다. commons-logging 번들을로드하는 번들 클래스 로더는 사용자가 제공 한 commons-logging.properties 파일에 액세스 할 수 없습니다. commons-logging-api.jar에는 클래스가 포함되며이 클래스는 commons-logging.jar에도 포함됩니다. 이것은 번들이 API를 정의하고 다른 번들이 해당 API 인 에 대한 구현을 제공하는 전통적인 OSGi 애플리케이션 아키텍처와는 반대로 입니다. 평민 로깅은 OSGi 에 직접 사용하는 대안이있다 : 적절한 OSGi 프레임 메타 데이터는 아파치 펠릭스, 스프링 소스 이클립스 궤도에서 수 있습니다 포함

Rebundled 버전. Pax 로깅 사용. 이 주제에 대한 자세한 내용은 commons dev ML 및 felix dev ML 및 Jira의 아카이브에 있습니다.

나는 락스에서 OSGi의 탭에 액세스하려고 할 때 예외 볼 수 있습니다 (JIRASERVER/플러그인/서블릿/UPM/OSGI 번호의 OSGI에가는) :
의 ClassNotFoundException : org.apache.commons합니다. logging.impl.SLF4JLogFactory

그리고 (Log4JLogger 클래스를 검색 할 때) 또한 내가 두 정의가 그 IDE에서 볼 수 있습니다

package org.apache.commons.logging.impl.Log4JLogger 
public class Log4JLogger implements Log, Serializable { 

package com.atlassian.extras.common.log; 
class Log4jLogger implements com.atlassian.extras.common.log.Logger.Log { 

이 정말 혼란을 ....

+0

전체 스택 추적을 게시하십시오. –

+0

@SotiriosDelimanolis Stack Trace로 이미지를 추가했습니다. (너무 작게 보시면 이미지를 오른쪽 클릭하고 새 탭을 엽니 다.) – Enrique

답변

0

잘 모르겠습니다 만, 구성한 로거가 pom 의존성의 로거와 일치하지 않을 수 있습니까? 아마도 다른 버전일까요?

+0

바트를 어떻게 확인할 수 있습니까? 나는 Maven에서 새로운데, 나는 그곳의 의존성과 많은 싸움을하고 있었다. – Enrique

관련 문제