一个模块的依赖关系很差,它依赖于同一库的多个版本。该库未由任何其他依赖项使用。如果我只是排除该库来解决版本冲突,那么显然需要在每个子模块中导入该库。这不方便且容易出错。是否可以排除特定版本?我知道exclude标签不支持版本,但是可能有所更改。
答案 0 :(得分:3)
使用<dependencyManagement>
设置库的版本。这可以在父pom中完成。此版本将覆盖依赖树中遇到的所有版本。
它还将满足强制实施程序插件的“依赖关系收敛”规则。
请注意,Maven将始终只加载同一库的一个版本-如果发现不同版本,它将使用依赖项解析机制。但是,最好通过dependencyManagement解决冲突。