从父 pom 覆盖依赖版本的推荐方法是什么?

What is the recommended way of overriding version of a dependency from parent pom?

我想覆盖父 POM 中的充气城堡版本。我知道我们可以像这样显式添加依赖项:

<dependency>
    <groupId>org.bouncycastle</groupId>
    <artifactId>bcpkix-jdk15on</artifactId>
    <version>1.69</version>
</dependency>

但这不是推荐的方式,推荐的方式是在POM的属性部分添加版本,但我似乎找不到Bouncy castle的版本名称属性。

由您来创建和命名 属性。

<properties>
    <bouncycastle.version>1.69</bouncycastle.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcpkix-jdk15on</artifactId>
        <version>${bouncycastle.version}</version>
    </dependency>
</dependencies>

参考Maven POM的参考文档:Properties

but I can't seem to find the name of the version property for Bouncy castle.

因为它是自定义的,所以你需要创建它。

您可以在下面定义自定义 属性 并从您的依赖项中引用它。 首选方法是将 属性 放在父 pom 中。

<properties>
    <bouncycastle.version>1.69</bouncycastle.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcpkix-jdk15on</artifactId>
        <version>${bouncycastle.version}</version>
    </dependency>
</dependencies>

您可以在此处查看更多方法以 override verison