2012-05-04 2 views
4

I가 다음 받는다는 종속성을 사용하는 프로젝트 :SLF4J 버전 불일치 및 바인딩 복제 한

SLF4J: The requested version 1.5.10 by your slf4j binding is not compatible with [1.5.5, 1.5.6, 1.5.7, 1.5.8] 
SLF4J: See http://www.slf4j.org/codes.html#version_mismatch for further details. 
SLF4J: Class path contains multiple SLF4J bindings. 
SLF4J: Found binding in [jar:file:/Users/kzhang/.m2/repository/org/slf4j/slf4j-jdk14/1.5.10/slf4j-jdk14-1.5.10.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: Found binding in [jar:file:/Users/kzhang/.m2/repository/org/slf4j/slf4j-simple/1.5.10/slf4j-simple-1.5.10.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: Found binding in [jar:file:/Users/kzhang/.m2/repository/org/slf4j/slf4j-log4j12/1.5.8/slf4j-log4j12-1.5.8.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. 

내 이해하는 것이있다 : 나는 그것을 실행하면

<dependency> 
       <groupId>com.dropbox</groupId> 
       <artifactId>client2</artifactId> 
       <version>1.3</version> 
      </dependency> 
      <dependency> 
       <groupId>junit</groupId> 
       <artifactId>junit</artifactId> 
       <version>4.8.1</version> 
      </dependency> 
      <dependency> 
       <groupId>org.apache.httpcomponents</groupId> 
       <artifactId>httpcore</artifactId> 
       <version>4.0.1</version> 
      </dependency> 
      <dependency> 
       <groupId>org.apache.httpcomponents</groupId> 
       <artifactId>httpclient</artifactId> 
       <version>4.0.3</version> 
      </dependency> 
      <dependency> 
       <groupId>org.apache.httpcomponents</groupId> 
       <artifactId>httpmime</artifactId> 
       <version>4.0.3</version> 
      </dependency> 
      <dependency> 
       <groupId>commons-logging</groupId> 
       <artifactId>commons-logging</artifactId> 
       <version>1.1.1</version> 
      </dependency> 
      <dependency> 
       <groupId>commons-io</groupId> 
       <artifactId>commons-io</artifactId> 
       <version>2.3</version> 
      </dependency> 
      <dependency> 
       <groupId>org.json</groupId> 
       <artifactId>simple</artifactId> 
       <version>1.1</version> 
      </dependency> 
      <dependency> 
       <groupId>com.google.inject</groupId> 
       <artifactId>guice</artifactId> 
       <version>3.0</version> 
      </dependency> 
      <dependency> 
       <groupId>org.mockito</groupId> 
       <artifactId>mockito-all</artifactId> 
       <version>1.9.0</version> 
      </dependency> 
      <dependency> 
       <groupId>com.believer</groupId> 
       <artifactId>box4j</artifactId> 
       <version>1.2</version> 
      </dependency> 
      <dependency> 
       <groupId>com.sun.jersey</groupId> 
       <artifactId>jersey-client</artifactId> 
       <version>1.12</version> 
      </dependency> 
      <dependency> 
       <groupId>com.google.code.gson</groupId> 
       <artifactId>gson</artifactId> 
       <version>2.1</version> 
      </dependency> 
      <dependency> 
       <groupId>org.apache.maven.surefire</groupId> 
       <artifactId>surefire</artifactId> 
       <version>2.12</version> 
      </dependency> 
     </dependencies> 

, 그것은 나에게 경고 불평을 제공을 하나 이상의 종속성에 slf4j가 포함되어 있습니다. slf4j를 제외 할 수 있어야합니다. 그러나 실제로 내 종속성 중 어느 것이 이것을 유발하는지 알지 못합니다.

다른 사람이 도와 줄 수 있습니까?

감사

+0

netbeans 또는 Intellij IDEA를 사용합니까? 둘 다이 JAR 지옥과 Maven 의존성에 대한 그래픽보기를 가지고 있습니다 ... – Kartoch

답변

14

mvn dependency:tree -Dincludes=*slf4j*을 실행하십시오. 그것은 어떤 아티팩트가 slf4j에 대한 종속성을 정의하는지 보여 주어야합니다.

추가 매개 변수를 사용하여 특정 slf4j 종속성을 필터링 할 수 있습니다. 특정 종속성에 대한 플러그인 및 필터링에 대한 자세한 내용은 here을 참조하십시오.

+0

이것은 의존성 조사에 몇 시간을 구했습니다. – Dimitris

4

는 의존성이 올 곳에서 확인 MVN 종속성을 시도하려면 트리합니다.