我们的warfile 不包含jarfile 的预期SNAPSHOT-Version,它包含通过另一个依赖项的较旧版本。
简化依赖:树
war-x.x.x-SNAPSHOT
\- jar1-x.x.x-SNAPSHOT
+- jar2-x.x.x
| +- problemjar-x.x.x
+- jar3-x.x.x-SNAPSHOT
jar3-xxx-SNAPSHOT 具有依赖项“problemjar-xxy-SNAPSHOT”(较新版本),但 war 项目构建(和依赖项:树)包含来自“jar2-xxx”的“problemjar-xxx”。
现在,我们为“jar2-xxx”“排除”“problemjar-xxx”。
但是很高兴知道这种行为的原因,恕我直言,排除只是一种解决方法。
笔记:
- “jar3-xxx-SNAPSHOT”中的依赖项“problemjar-xxy-SNAPSHOT”未“提供”。
- Maven 版本是 3.2.5
- 上面简化的dependency:tree中的levels是正确的,所以旧版本的路径不会比新SNAPSHOT版本的路径短
编辑:项目结构
war 和 jar1 是一个父 pom 的子级,简化的依赖项:tree 来自 war 项目,其中 jar1 项目作为依赖项。其他是正常/外部依赖项,从 war 项目中可以看出,它也适用于 jar1。