0

我有一个父 pom,它定义了许多我希望我的子 pom 继承的插件和依赖项。但是,我们使用 scm 元素作为发布版本的一部分,我想将父级的 scm 添加到 pom 中,但它不会被任何子级 pom 继承(以防子级忘记定义它并使用父级的)。有没有办法将元素设置为不可继承?

4

1 回答 1

0

我不这么认为。

但是你能不能让它使用一个在父 pom 和从属 pom 中以不同值结束的属性,这样如果孩子没有自己的<scm>标签,它会在孩子中失败?用于<profile>在父项和子项中以不同方式定义属性。

有时这行得通。

有时它起作用的原因是配置文件不被孩子继承,但如果父配置文件设置了一个属性,则该属性由孩子继承。

因此,有时您可以使用该“功能”来完成您正在做的事情。如果您在父项中激活配置文件并且该<scm>部分在配置文件中,则子项不会继承它。

另一种可能的解决方案是让您使用版本控制系统上的权限。在某些情况下,允许签入子项目的用户凭据可能不会被授予签入父项目的权限。如果子项目没有声明自己的项目,<scm>那么他们将无权愚弄父母部分中的回购<scm>部分。

于 2013-03-05T19:58:53.123 回答