slf4j-log4j12「ランタイム」スコープでmavenによってパッケージ化されていない
-
05-10-2019 - |
質問
MavenがSLF4J-API-1.5.8およびLOG4J-1.2.14依存関係を備えたプロジェクトを管理しています。実行時に、SLF4Jが必要です slf4j-log4j12-1.5.8.jar
log4jへの出力を「ブリッジ」します。
だから pom.xml
、この依存関係を追加します:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.5.8</version>
<type>jar</type>
<scope>runtime</scope>
</dependency>
</dependencies>
</dependencyManagement>
建設後(戦争:戦争)、 log4j-1.2.14.jar
と slf4j-api-1.5.8.jar
どちらも追加されます WEB-INF/lib
ディレクトリですが、見つかりません slf4j-log4j12-1.5.8.jar
以内に!
次に、「依存関係階層」を使用して解決された依存関係を確認しますが、slf4j-log4j12を見つけることができません(したがって、にパッケージ化されていません WEB-INF/lib
)
ここで何が問題になっているのですか?
環境:Maven 3.0-Beta1、M2-Eclipse-0.10.0.0100209
解決
依存関係管理セクションは、依存関係情報を集中化するメカニズムであり、依存関係管理セクションに依存関係を追加することは、それ自体でプロジェクトの依存関係になりません。
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.5.8</version>
<type>jar</type>
<scope>runtime</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</dependency>
</dependencies>
所属していません StackOverflow