共享多个POM文件之间的依赖关系

blu*_*sky 6 maven-3 maven

跨Maven项目共享多个依赖项的最佳实践方法是什么?

我可以想到以下两种可能的方法 -

  1. 创建父POM文件并在使用该组依赖项的每个项目中使用相同的POM文件.

  2. 使用包含依赖项的POM文件创建新的maven项目.然后在需要公共依赖项的所有项目中引用此项目.

还有其他方法,我应该使用哪种方法?

Sti*_*ens 5

IMO 这有点取决于您的确切用例。

选项 1 当然是一个不错的方法,但如果您已经有一个父项目,特别是如果您有几个共享依赖集(您可能会发现自己迷失在多个父项的复杂层次结构中),则管理起来会变得更加困难/复杂)。选项 1 的另一个缺点是 (AFAIK) 无法排除继承的依赖项,因此如果您的项目扩展了父 pom,您别无选择,只能继承所有依赖项。

在这种情况下,选项 2 更易于管理、更清晰和更灵活。创建一个 POM 类型的 Maven 项目,并在需要的地方添加一个依赖项。使用此解决方案,可以从 POM 项目中排除某些依赖项,这再次使此解决方案更加灵活。