http://maven.apache.org/, Maven其實就是為java實現的一個構建工具。他比Ant更高端。
目前,絕大多數開發人員都把 Ant 當作 Java 編程項目的標准構建工具。遺憾的是,Ant 的項目管理工具(作為 make
的替代工具)不能滿足絕大多數開發人員的需要。通過檢查 Ant 構建文件,很難發現項目的相關性信息和其它元信息(如開發人員/擁有者、版本或站點主頁)。
Maven 除了以程序構建能力為特色之外,還提供 Ant 所缺少的高級項目管理工具。由於 Maven 的缺省構建規則有較高的可重用性,所以常常用兩三行 Maven 構建腳本就可以構建簡單的項目,而使用 Ant 則需要十幾行。事實上,由於 Maven 的面向項目的方法,許多 Apache Jakarta 項目現在使用 Maven,而且公司項目采用 Maven 的比例在持續增長。
那么,Maven 和 Ant 有什么不同呢?在回答這個問題以前,我要強調一點:Maven 和 Ant 針對構建問題的兩個不同方面。Ant 為 Java 技術開發項目提供跨平台構建任務。Maven 本身描述項目的高級方面,它從 Ant 借用了絕大多數構建任務。因此,由於 Maven 和 Ant 代表兩個差異很大的工具,所以我將只說明這兩個工具的等同組件之間的區別,如表 1 所示。
Maven | Ant | |
標准構建文件 | project.xml 和 maven.xml | build.xml |
特性處理順序 |
|
|
構建規則 | 構建規則更為動態(類似於編程語言);它們是基於 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版本.