次のように直接依存するmavenプロジェクトがあります。
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
<scope>compile</scope>
<optional>false</optional>
</dependency>
しかし、それにもかかわらず、mvn dependency:tree
ショーのslf4j-api
バージョンは として選択され1.6.2
、私のプロジェクトへの直接の依存関係として選択されました!
私のプロジェクトには、 の他のバージョンに依存する可能性のある他の依存関係がありますslf4j
。しかし、私の理解では、ツリーのルートに最も近い指定されたバージョンが選択されます。
slf4j
関連するものへのその他の依存関係はorg.slf4j:jul-to-slf4j:jar:1.7.5:compile
、org.slf4j:log4j-over-slf4j:jar:1.7.5:compile
(直接的な依存関係)およびorg.slf4j:jcl-over-slf4j:jar:1.7.3:runtime
(推移的な依存関係)です。
私はwar
このmavenプロジェクトでビルドしており、slf4j
含まれているjarファイル1.6.2
はアーカイブにあります。.jar バージョンではなく、確実に jar バージョンを取得するために何をすべきかわかりませ1.7.5
ん1.6.2
。
更新:私は maven を使用してい3.0.4
ます。
更新 2: 要求に応じて、pom とデバッグ ログが追加されます。ファイルが大きかったので、ドロップボックスのパブリック フォルダーに追加しました: https://www.dropbox.com/sh/w1rtgvxvnt4jf18/lbiMIgwWD_