`

maven3实战之坐标和依赖(最佳实践之归类依赖)

阅读更多

maven3实战之坐标和依赖(最佳实践之归类依赖)

----------

 

假如有个项目有很多关于SpringFramework的依赖,它们分别是org.springframework:spring-core:2.5.6、org.springframework:spring-bean:2.5.6、org.springframework:spring-context:2.5.6,它们是来自同一项目的不同模块。因此,所有这些依赖的版本会一起升级。因为它们版本是相同的,所以应该在一个唯一的地方定义版本并且在dependency声明中引用这一版本。这样,在升级时只需要修改一处即可,例:

 

<project>
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.juven.mvnbook.account</groupId>
    <artifactId>accout-email</artifactId>
    <version>1.0.0-SNAPSHOT</version>
    <properties>
        <springframework.version>1.5.6</springframework.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>${springframework.version}</version>
        </dependency> 
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>${springframework.version}</version>
        </dependency>       
    </dependencies>
</project>

 

这里简单用到了maven属性首先使用properties元素定义maven属性,该例中定义了一个springframework.version子元素,其值为:2.5.6。有了这个属性定义之后,maven运行的时候会将POM中的所有的${springframework.version}替换成实际值:2.5.6。也就是说,可以使用美元符号和大括弧环绕的方式引用Maven属性。然后,将所有springframework依赖的版本值用这样一属性引用表示。

 

 

 

 

分享到:
评论
1 楼 yufu 2011-10-19  
非常好,学习学习

相关推荐

Global site tag (gtag.js) - Google Analytics