I have a maven project which has the direct dependency as follows:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
<scope>compile</scope>
<optional>false</optional>
</dependency>
but in spite of this, the mvn dependency:tree
shows slf4j-api
version chosen as 1.6.2
, and as direct dependency to my project!
There are other dependencies in my project which might depend on some other version of slf4j
. But my understanding is that the version specified nearest to the root of the tree is picked up.
Other dependencies on slf4j
related stuff are org.slf4j:jul-to-slf4j:jar:1.7.5:compile
, org.slf4j:log4j-over-slf4j:jar:1.7.5:compile
(direct dependencies) and org.slf4j:jcl-over-slf4j:jar:1.7.3:runtime
(transitive dependency)
I am building a war
in this maven project, and the jar of slf4j
included is at 1.6.2
in the archive. I don't know what to do to make sure I get the jar version 1.7.5
and not 1.6.2
.
Update: I am using maven 3.0.4
.
Update 2: As requested, the pom and the debug logs are added. Since the files were huge, I've added it to dropbox Public folder: https://www.dropbox.com/sh/w1rtgvxvnt4jf18/lbiMIgwWD_