Just a blog
分类: Java
2011-04-20 22:16:07
Maven是一个在Java社区中广泛使用的工具,简单的说,可以认为它是一个编译构建工具。
而实际上,它的功能远远不止编译和构建,实际上是一个项目生命周期的管理工具。
在Maven的众多功能中,大致说4点Maven最有特点也最能够让我们从中受益的特点:
1,Maven对于一个项目文件路径的约定。有一些人喜欢自己定义不同的文件夹来存放不同的文件,
比如源代码,资源文件,测试用例等。Maven提供了一个默认的文件夹目录结构,用于存放不同类型的项目文件。
Maven的这一点实际上是保证了快速上手。因为如果接触一个从未做过的新项目,而这个项目是用熟悉的Maven文件目录结构来组织的,
那么可以迅速的找到源代码的位置,测试用例的位置,资源文件的位置等等。
2,Maven不仅仅是一个编译工具,它可以用于管理一个项目的生命周期:编译,测试,打包,发布,文档生成,项目站点生成等。
有了这些功能,可以省下很大的精力从而专注于代码的开发。
3,Maven可以帮助管理应用程序依赖。Maven的这项功能: 一个Java项目也好一个Flex项目也好,都会遇到各种各样的依赖,
比如说可能会依赖Flex SDK, 不同的swc,在java中有不同的jar包需要依赖。管理依赖是一个很麻烦的事情。
在Flex的开发中,如果发布环境在Linux上,也许要花费很多的时间来搞定各种编译依赖关系从而能够在linux上顺利编译发布项目。
而Maven的依赖管理,通过groupid, artifactid,以及版本号一次性设置好项目环境。
不管是在windows上还是linux还是MacOS,都能用一个命令搞定编译,测试,打包等
4,Maven是可以扩展的。如果熟悉ant,也许知道ant是一个自动化的编译工具,它也是可以扩展的,Maven也是可以扩展的,
我们通过配置不同的Maven 插件可以增强Maven的功能,比如svn的管理,比如我们这次需要使用的FlexMojos 就是Maven的一个扩展,
让Maven可以不仅仅限于只能用于Java项目,也可以适用于Flex项目。