这是我偶然发现的一个真实例子。我有带有以下声明的spring-context工件(spring.version为3.2.4.RELEASE):
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
如果您查看此页面http://www.mvnrepository.com/artifact/org.springframework/spring-context/3.2.4.RELEASE,您将在本段中看到(此工件取决于...)所有依赖项使用上面的声明时导入。其中之一是hibernate-validator(4.3.0.FINAL)。
稍后,我决定在pom.xml文件中使用另一个版本的hibernate-validator(例如,因为它是较新的),并且声明以下代码:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.3.1.Final</version>
</dependency>
现在看来,我的项目正在导入两个不同版本的hibernate-validator。该项目正在使用哪一个?谢谢你。
不可思议的词是distance
:使用最接近您的项目的词。因此,如果您在项目pom中定义它,则将使用它。您还可以检查maven-dependency-plugin,它具有多个目标,可以显示以不同方式使用哪个版本。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句