我不确定这是一个错误还是一个功能,但我试图仅覆盖 dependencyManagement 部分中导入的 BOM 中管理的依赖项的范围,而不是版本。如果我这样做,版本是未知的,但我不确定这是故意的还是我的设置有问题。
最佳答案
Maven 文档指出这是 dependency scope 的意图:
Dependency scope is used to limit the transitivity of a dependency, and also to affect the classpath used for various build tasks.
所以,是的 - 应该可以覆盖范围。但是,覆盖究竟如何影响类路径,取决于初始范围值及其最终值。
此外,如果您要覆盖 BOM 的依赖关系范围,则需要在 <dependencies>
中执行此操作。而不是在<dependencyManagement>
中部分。
<dependencyManagement>
用于定义依赖项版本,因此本节中唯一合适的范围是 import
对于 BOM。但是,范围 provided
有一个异常(exception)。 : provided
specified in <dependencyManagement>
will override defined scope in <dependencies>
section .
关于java - 是否可以覆盖通过导入的 BOM 默认管理的依赖项的范围而不覆盖版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54600568/