8

これは私のマルチモジュール プロジェクトの構造です。

/root
  /api dependencies: slf4j
  /foo dependencies: slf4j-log4j12, log4j

つまり、モジュールapislf4jロギング目的で使用します。ロギング機能の実装がどうなるかはわかりません。モジュールは、ロギングを実装するためにfoo追加slf4j-log4j12します。log4jものすごく単純。

今、私は実行maven-dependency-plugin:analyze-onlyしていますが、これは module について次のように述べていますfoo

[WARNING] Unused declared dependencies found:
[WARNING]    org.slf4j:slf4j-log4j12:jar:1.6.1:compile
[WARNING]    log4j:log4j:jar:1.2.16:compile

fooプラグインが、これらの依存関係が本当に必要であることを理解していないことを意味します。どうすれば問題を解決できますか?

4

2 に答える 2

11

これらの依存関係に のruntime代わりにスコープを指定するとどうなりcompileますか?

それらをコンパイル時の依存関係として定義した場合、実際にはそうでない場合でも、依存関係プラグインはコンパイルに必要であると考えると思います。ただし、実行時に必要なのは slf4-log4j および log4j JAR ファイルのみです。

編集:ignoreNonCompileオプションを設定する必要があるかもしれません:

http://maven.apache.org/plugins/maven-dependency-plugin/analyze-mojo.html

于 2011-02-07T08:51:46.320 に答える
0

slf4j-log4j12log4jランタイムのスコープを設定しようとしましたか? Maven の依存関係のスコープ
を参照してください

于 2011-02-07T08:51:47.747 に答える