我有一个具有许多依赖项的Gradle项目,其中一项解决如下:

gradle dependencyInsight --configuration compile --dependency javax.activation

:dependencyInsight
javax.activation:activation:1.1 (conflict resolution)
+--- com.sun.mail:mailapi:1.4.4
|    \--- compile
\--- com.sun.mail:smtp:1.4.4
     \--- compile

javax.activation:activation:1.0.2 -> 1.1
\--- compile

版本1.1必须是传递依赖,因为我明确指定了1.0.2。我如何找出这种特定的传递依赖关系来自何处?

最佳答案

回答这个问题是dependencyInsight任务的重点。 javax.activation:activation:1.1com.sun.mail:mailapi:1.4.4com.sun.mail:smtp:1.4.4引入。

如果您自己的代码也依赖javax.activation,则可以使用compile("javax.activation:activation:1.0.2") { force = true }强制您的版本。如果不是,则可以使用configurations.all { resolutionStrategy.force "javax.activation:activation:1.0.2" }强制版本。

10-08 15:19