我遇到了这个问题,我认为它是由一些依赖于旧版本速度的库引起的。我的 pom 明确要求速度的正确版本,但我认为其他一些依赖项正在传递旧版本的速度,而这正在我的类路径中使用。
我知道mvn dependency:tree
,但是在一个复杂的项目中,这可能会输出一个非常高、难以阅读的树。例如,这比我想弄清楚什么取决于速度 1.5 还要多思考。
所以我想,“拯救”。但这并没有帮助,因为我得到了这个输出:
$ 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。maven 是否提供了一些论据来dependency:tree
让我的生活更轻松?还是有一些巧妙的技巧可以与 shell 命令一起使用来解决这个问题?我正在使用 cygwin 顺便说一句,但我希望这并不重要,因为它具有大多数可用的命令。