2017-08-25 95 views
2

想象一下,您想要为Maven项目添加依赖项。这个依赖关系是一个孩子,它有一个不包含在你的依赖关系中的父类。Maven将项目作为依赖添加子项

例如,我有一个项目A,它有一个依赖项b。该库b为B的子库B有依赖C.

我的项目A的POM具有这种依赖关系(库 'B'):

// pom of A  
<dependency> 
    <artifactId>b</artifactId> 
    <groupId>something.thisthing</groupId> 
    <version>0.1</version> 
</dependency> 

B的父,B具有相关性:

// pom of B 
<dependency> 
    <groupId>something.thisthing</groupId> 
    <artifactId>C</artifactId> 
    <version>${theVersionOfC}</version> 
</dependency> 

最后,b对下的依赖,但没有它的版本提到,它使用在其父母的POM给出的${theVersionOfC}参数:

// pom of b 
<dependency> 
    <groupId>something.thisthing</groupId> 
    <artifactId>C</artifactId> 
</dependency> 

我的项目A无法找到依赖项C,因为版本没有在b的pom中指定。

我该如何对b有依赖关系,并告诉b它应该使用哪个版本的C?

回答

0

人造体b需要从某处绘制版本something.thisting。符号表明该版本取自一些dependencyManagement。这可能在b的pom或B的pom中。在B的pom中,你提到了一个非常类似于它应该是dependencyMangement条目的依赖项。如果您将B的pom中的依赖关系置于dependencyManagement中,它应该可以工作(如果还指定了该属性)。

+0

会很好,如果你可以添加一些例子。 – nullpointer

相关问题