Maven依赖范围 - 重访

时间:2017-09-22 08:59:17

标签: maven

请有人知道关于范围矩阵的以下相当明显的问题的答案"在官方maven文档中:

https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope

脚注解释了为什么单元格索引[compile,compile]再次包含值" compile"。

在我看来,非常相同的论据意味着以下内容:

  1. 单元格[compile,provided]和[提供,提供]都应包含"提供"。

  2. Cell [test,provided]应包含" test"。

  3. 那么为什么所有这些细胞都含有" - " ?!? 这对我来说没有意义......

    非常感谢所有有用的建议!

1 个答案:

答案 0 :(得分:0)

provided表示依赖项由容器提供,这意味着此范围的使用取决于手头的容器。

因此,此范围应设置在“可部署单元”(war,ear,standalone jar)的级别,而不是设置在传递依赖关系树的深处。 因此,provided依赖关系具有传递性是没有用的。

相反,您可以使用最高级别的dependencyManagement覆盖范围,以确保您按容器提供的依赖标记这些依赖关系。