【发布时间】:2012-08-02 15:06:03
【问题描述】:
我们有一个父 POM,我们想在其中设置一个依赖项,但没有该依赖项的 version。这个想法有点像抽象成员:我们要确保继承者指定此依赖项的特定实例。
如何才能最好地实现这一目标?我们可以在父级中设置一个默认版本,如果子级想要覆盖它,那么他们可以使用dependencyManagement 这样做。另一种可能的解决方案是使用在子项中设置的属性。
【问题讨论】:
我们有一个父 POM,我们想在其中设置一个依赖项,但没有该依赖项的 version。这个想法有点像抽象成员:我们要确保继承者指定此依赖项的特定实例。
如何才能最好地实现这一目标?我们可以在父级中设置一个默认版本,如果子级想要覆盖它,那么他们可以使用dependencyManagement 这样做。另一种可能的解决方案是使用在子项中设置的属性。
【问题讨论】:
如果你在<dependencies> 中定义了一个依赖,你必须设置一个(有效的)版本号。但是,正如您所说,您可以将版本号放入属性中。然后,如果需要,子项目可以覆盖此属性。但是,父项目有一个默认版本。
<dependenyManagement> 只是用来声明依赖关系。但它不会向您的项目添加依赖项。
【讨论】: