Maven是一個項目管理和構建自動化工具。Maven提供了開發人員構建一個完整的生命週期框架,開發團隊能夠自動完成項目的基礎工具建設。一個Maven項目的結果以下圖所示:html
在安裝maven以前,先保證安裝了JDK,而後在Apache的官網上http://maven.apache.org/download.cgi下載最新版本的Binary zip archive包。java
下載完解壓放在本地的某個路徑下,而後配置maven環境變量:web
新建變量名M2_HOME:C:\Program Files\apache-maven-3.3.9apache
變量值:C:\Program Files\apache-maven-3.3.9windows
配置完成後,在windows命令提示符下,輸入mvn -version,若是顯示下圖則表示安裝成功:api
在Eclipse 4.0以上版本,繼承了Maven的插件,能夠在Window -> Preference -> Maven進行一些配置:瀏覽器
mvn archetype:create 建立Maven項目 mvn compile 編譯源代碼 mvn deploy 發佈項目 mvn test-compile 編譯測試源代碼 mvn test 運行應用程序中的單元測試 mvn site 生成項目相關信息的網站 mvn clean 清除項目目錄中的生成結果 mvn package 根據項目生成的jar mvn install 在本地Repository中安裝jar mvn eclipse:eclipse 生成eclipse項目文件 mvn jetty:run 啓動jetty服務 mvn tomcat:run 啓動tomcat服務 mvn clean package -Dmaven.test.skip=true:清除之前的包後從新打包,跳過測試類
Maven的生命週期是爲了對全部的構建過程進行了抽象,便於統一。tomcat
pre-clean 執行清理前的工做服務器
clean 清理上一次構建生成的全部文件oracle
post-clean 執行清理後的文件
compile 編譯項目中的源代碼
test 使用合適的單元測試框架進行測試,這些測試代碼不會被打包或部署
test-compile 將須要測試的源代碼編譯到路徑,通常是編譯src/test/java目錄下的java文件至目標輸出的測試classpath目錄中
package 接受編譯好的代碼,打包成可發佈的格式,如JAR
install 將包安裝到本地倉庫,給其餘本地引用提供依賴
pre-site 在生成項目站點前要完成的工做
site 生成項目的站點文檔
post-site 在生成項目站點後要完成的工做
site-deploy 發佈生成的站點到服務器上
在Eclipse中新建一個Maven項目:
Finish後項目的結果是:
Eclipse構建web項目時,與上面大致相同,須要注意是選擇ArcheType的時候選擇maven-archetype-webapp。
pom文件爲:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.xj.webdemo</groupId> <artifactId>webdemo</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>webdemo Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.10</version> <scope>test</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.0.1</version> <scope>provided</scope> </dependency> </dependencies> <build> <finalName>webdemo</finalName> <plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> <executions> <execution> <phase> package </phase> <goals> <goal>run</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </project>
而後運行,就能夠在瀏覽器輸入localhost:8080,就能夠訪問了。
一個項目全部的配置都放置在pom文件中:定義項目的類型、名字、管理依賴關係,定製插件的行爲等等。
在pom文件中
<groupId></groupId> <artifactId></artifactId> <version></version>
叫作座標,它能惟一的肯定一個項目,有了maven座標,咱們就能夠用它來指定咱們的項目所依賴的其餘項目,插件,或者父項目。
當第一次運行maven命令時,你須要Internet鏈接,由於它要從網上下載一些文件,maven默認的遠程庫是http://repo1.maven.org/maven2,這個遠程庫有maven的核心插件和可供下載的jar文件。
但不是全部的jar文件均可以從遠程庫下載,好比咱們本身開發的項目,這個時候能夠在內部定製庫,也能夠手動下載和安裝所需的jar文件到本地庫。
本地庫是指 maven 下載了插件或者 jar 文件後存放在本地機器上的拷貝。在 Linux 上,它的位置在 ~/.m2/repository,在 Windows XP 上,在 C:\Documents and Settings\username\.m2\repository ,在 Windows 7 上,在 C:\Users\username\.m2\repository。當 maven 查找須要的 jar 文件時,它會先在本地庫中尋找,只有在找不到的狀況下,纔會去遠程庫中找。
運行下面的命令能把咱們的 helloworld 項目安裝到本地庫:
$mvn install
一、http://www.oracle.com/technetwork/cn/community/java/apache-maven-getting-started-2-405568-zhs.html