因此,当我遇到如下依赖冲突时:
我的 pom 想要 A,并且向下几个级别拉入 X 版本 3.0。这就是我想要的 X。
我的 pom 也想要 B,然后再往下几级,它就会引入 X 2.0 版;我不想要。
由于默认的 Maven 依赖解析,2.0 版获胜。
请注意,A、B 和 X 是第 3 方库,因此我无法控制它们。
现在,我已经看到了两种处理方法:
1) 只需将 X 版本 3.0 作为依赖项添加到我的 pom 中。2) 为 B 添加一个“排除”,以排除 X。
哪个更好?为什么?或者它是那些“它取决于”之一?