Maven 2 如何限制第三方软件包依赖项引用的版本?

Maven 2 如何限制第三方软件包依赖项引用的版本?,maven-2,Maven 2,我的项目中有一个第三方依赖项,它使用开放式版本引用引用其依赖项: <version>[4.0,)</version> [4.0,] 如何在我的项目中覆盖此,使我的依赖项不使用特定版本之后的依赖项版本,例如6.0?(6.0之后的版本需要一些我根本不想要的其他包)如果在项目中明确指定可传递依赖项,则指定的版本将优先 例如,在POM中添加对com.foo:bar的依赖项,其版本范围具有如下排他性上限: <dependencies> <dependenc

我的项目中有一个第三方依赖项,它使用开放式版本引用引用其依赖项:

<version>[4.0,)</version>
[4.0,]

如何在我的项目中覆盖此,使我的依赖项不使用特定版本之后的依赖项版本,例如6.0?(6.0之后的版本需要一些我根本不想要的其他包)

如果在项目中明确指定可传递依赖项,则指定的版本将优先

例如,在POM中添加对com.foo:bar的依赖项,其版本范围具有如下排他性上限:

<dependencies>
  <dependency>
    <groupId>com.foo</groupId>
    <artifactId>bar</artifactId>
    <version>[4.0,6.0)</version>
  </dependency>
</dependencies>
如果我在test base中添加了对test transitive的显式依赖,并且依赖范围设置为[0.0.1,2.0.0]),我将得到以下树:

name.seller.rich:test-base:jar:0.0.1
+- name.seller.rich:test-dependency:jar:0.0.1:compile
\- name.seller.rich:test-transitive:jar:1.0.1:compile
name.seller.rich:test-base:jar:0.0.1
+- name.seller.rich:test-dependency:jar:0.0.1:compile
\- name.seller.rich:test-transitive:jar:1.0.1:compile