2013-06-03 68 views
31

如何解决从父pom管理的属性的占位符${project.version}?我预计其在全球范围内解决,因此当父POM具有版本2,${project.version}也将被解析为第2版。

在父POM我:

<groupId>my.group</groupId> 
<artifactId>parent</artifactId> 
<version>2</version> 
<packaging>pom</packaging> 

<dependencyManagement> 
    <dependencies> 
     <dependency> 
      <groupId>my.group</groupId> 
      <artifactId>dep</artifactId> 
      <version>${project.version}</version> 
     </dependency> 
    </dependencies> 
</dependencyManagement>  

在孩子我用

<parent> 
    <groupId>my.group</groupId> 
    <artifactId>parent</artifactId> 
    <version>2</version> 
</parent> 
<version>1</version> 
<artifactId>child</artifactId> 

但是使用了神器my.group.dep.1.jar,而不是my.group.dep.2.jar。因此,占位符被解析为项目的版本,使用管理的依赖关系,而不是那些定义依赖项的项目

这是预期的行为?我正在使用maven 3.0.4。

回答