您的位置:首页 > 其它

项目管理: Maven 让事情变得简单

2014-03-07 00:12 190 查看
http://maven.apache.org/, Maven其实就是为java实现的一个构建工具。他比Ant更高端。

目前,绝大多数开发人员都把 Ant 当作 Java 编程项目的标准构建工具。遗憾的是,Ant 的项目管理工具(作为
make
的替代工具)不能满足绝大多数开发人员的需要。通过检查 Ant 构建文件,很难发现项目的相关性信息和其它元信息(如开发人员/拥有者、版本或站点主页)。

Maven 除了以程序构建能力为特色之外,还提供 Ant 所缺少的高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目,而使用 Ant 则需要十几行。事实上,由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目现在使用 Maven,而且公司项目采用 Maven 的比例在持续增长。

Maven vs Ant

那么,Maven 和 Ant 有什么不同呢?在回答这个问题以前,我要强调一点:Maven 和 Ant 针对构建问题的两个不同方面。Ant 为 Java 技术开发项目提供跨平台构建任务。Maven 本身描述项目的高级方面,它从 Ant 借用了绝大多数构建任务。因此,由于 Maven 和 Ant 代表两个差异很大的工具,所以我将只说明这两个工具的等同组件之间的区别,如表 1 所示。

表 1. Maven vs Ant

MavenAnt
标准构建文件project.xml 和 maven.xmlbuild.xml
特性处理顺序${maven.home}/bin/driver.properties

${project.home}/project.properties

${project.home}/build.properties

${user.home}/build.properties

通过 -D 命令行选项定义的系统特性

最后一个定义起决定作用。
通过 -D 命令行选项定义的系统特性

<property>
任务装入的特性

第一个定义最先被处理。
构建规则构建规则更为动态(类似于编程语言);它们是基于 Jelly 的可执行 XML。构建规则或多或少是静态的,除非使用
<script>
任务。(请参阅 参考资料以获得相关教程。)
扩展语言插件是用 Jelly(XML)编写的。插件是用 Java 语言编写的。
构建规则可扩展性通过定义
<preGoal>
<postGoal>
使构建 goal 可扩展。
构建规则不易扩展;可通过使用
<script>
任务模拟
<preGoal>
<postGoal>
所起的作用。

5分钟使用起来Maven (http://maven.apache.org/guides/getting-started/maven-in-five-minutes.html)

1. Maven是一个java程序,所以需要一个java环境。必须是JDK,JRE满足不了条件。

2. 下载最新版本的download Maven,并安装,需要设置MAVEN环境变量和JAVA_HOME 。

Unix-based Operating Systems (Linux, Solaris and Mac OS X)
export PATH=/usr/local/apache-maven-3.x.y/bin:$PATH
Windows 2000/XP
set PATH="c:\program files\apache-maven-3.x.y\bin";%PATH%


3. 然后输入下面的命令

mvn --version


  得到相应, for example:

Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 14:51:28+0100)
Maven home: D:\apache-maven-3.0.5\bin\..
Java version: 1.6.0_25, vendor: Sun Microsystems Inc.
Java home: C:\Program Files\Java\jdk1.6.0_25\jre
Default locale: nl_NL, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"


根据你的网络环境,你可能需要其他设置。如果需要,参考 Guide to Configuring Maven

如果是Windows环境,那么需要参考Windows Prerequisites 。并且确定自己下的版本是Window版本.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: