私はこの問題を抱えており、古いバージョンの速度に応じて推移的にいくつかのライブラリが原因であると考えています。私の pom は明示的に正しいバージョンの速度を要求していますが、他の依存関係が古いバージョンの速度を推移的に引き込んでおり、代わりにこれがクラスパスで使用されていると思います。
私は知ってmvn dependency:tree
いますが、複雑なプロジェクトでは、これは非常に背が高く、読みにくいツリーを出力する可能性があります。たとえば、ベロシティ 1.5 に何が依存しているかを把握したいというよりも、考えることです。
そこで、「grep して救助する」と考えました。しかし、私はこの出力を得たので、それは役に立ちませんでした:
$ mvn dependency:tree | grep velocity
[INFO] | | +- velocity:velocity:jar:1.5:compile
[INFO] | | | +- velocity:velocity:jar:1.5:compile
[INFO] | | | +- velocity:velocity:jar:1.5:compile
[INFO] +- org.apache.velocity:velocity:jar:1.6.3:compile
[INFO] +- org.apache.velocity:velocity-tools:jar:2.0:compile
[INFO] | +- velocity:velocity:jar:1.5:compile
[INFO] | | +- velocity:velocity:jar:1.5:compile
[INFO] +- org.apache.velocity:velocity-tools:jar:2.0:compile
[INFO] | \- org.apache.velocity:velocity:jar:1.6.3:compile (version managed from 1.6.2)
[INFO] | | | +- velocity:velocity:jar:1.5:compile
[INFO] | +- org.apache.velocity:velocity-tools:jar:2.0:provided
[INFO] | | \- org.apache.velocity:velocity:jar:1.6.3:provided (version managed from 1.6.2)
[INFO] | | | +- velocity:velocity:jar:1.5:provided
[INFO] | +- org.apache.velocity:velocity-tools:jar:2.0:provided
[INFO] | | \- org.apache.velocity:velocity:jar:1.6.3:provided (version managed from 1.6.2)
[INFO] | +- org.apache.velocity:velocity-tools:jar:2.0:provided
[INFO] | | \- org.apache.velocity:velocity:jar:1.6.3:provided (version managed from 1.6.2)
[INFO] | | | +- velocity:velocity:jar:1.5:compile
[INFO] | +- org.apache.velocity:velocity:jar:1.6.3:compile (version managed from 1.6.3)
[INFO] | +- org.apache.velocity:velocity-tools:jar:2.0:compile (version managed from 2.0)
[INFO] | | +- velocity:velocity:jar:1.5:compile
その最初の速度 1.5 に実際に依存しているものはわかりません。dependency:tree
Maven は私の生活を楽にするためにいくつかの引数を提供していますか? または、これを理解するためにシェルコマンドで使用できる巧妙なトリックはありますか? 私はcygwinを使用していますが、これらのコマンドのほとんどが利用可能であるため、問題にならないことを願っています。