本教程將介紹如何使用Maven在Java開發,或任何其他的編程語言的任何專案。
Maven是什麼?
Maven是一個專案管理和綜合工具。Maven提供了開發人員構建一個完整的生命週期框架。開發團隊可以自動完成專案的基礎工具建設,Maven使用標準的目錄結構和默認構建生命週期。
在多個開發團隊環境時,Maven可以設置按標準在非常短的時間裏完成配置工作。由於大部分專案的設置都很簡單,並且可重複使用,Maven讓開發人員的工作更輕鬆,同時創建報表,檢查,構建和測試自動化設置。
Maven提供了開發人員的方式來管理:
-
Builds
-
Documentation
-
Reporting
-
Dependencies
-
SCMs
-
Releases
-
Distribution
-
mailing list
概括地說,Maven簡化和標準化專案建設過程。處理編譯,分配,文檔,團隊協作和其他任務的無縫連接。 Maven增加可重用性並負責建立相關的任務。
Maven歷史
Maven最初設計,是以簡化Jakarta Turbine專案的建設。在幾個專案,每個專案包含了不同的Ant構建檔。 JAR檢查到CVS。
Apache組織開發Maven可以建立多個專案,發佈專案資訊,專案部署,在幾個專案中JAR檔提供團隊合作和幫助。
Maven目標
Maven主要目標是提供給開發人員:
-
專案是可重複使用,易維護,更容易理解的一個綜合模型。
-
插件或交互的工具,這種聲明性的模式。
Maven專案的結構和內容在一個XML檔中聲明,pom.xml 專案對象模型(POM),這是整個Maven系統的基本單元。有關詳細資訊,請參閱Maven POM的部分。
Apache Maven 是一種創新的軟體專案管理工具,提供了一個專案對象模型(POM)檔的新概念來管理專案的構建,相關性和文檔。最強大的功能就是能夠自動下載專案依賴庫。
在本教學中,它提供了如何使用 Apache Maven 3.x 的許多實例和解釋。
Maven安裝和配置
在 Windows 和 Ubuntu 的安裝指南。
-
在Windows上安裝Maven
有關如何在 Windows 上安裝 Maven 的文章。 -
啟用Maven的代理訪問
要使用代理伺服器來連接互聯網,必須在 Maven 配置代理設置。
Maven資源庫
Maven 位置,中央和遠程存儲庫配置和解釋,有些術語可能需要在 Maven 使用前理解。
-
Maven本地資源庫
Maven 的本地資源庫是用來存儲專案的依賴庫,默認的檔夾是 “.m2” 目錄,可能需要將其更改為另一個檔夾。 -
Maven中央存儲庫
Maven 中央存儲庫是 Maven 用來下載所有專案的依賴庫的默認位置。 -
如何從Maven遠程存儲庫下載?,如何添加遠程庫?
並非所有的庫存儲在Maven的中央存儲庫,很多時候需要添加一些遠程倉庫來從其他位置,而不是默認的中央存儲庫下載庫。 -
Maven依賴機制
這裏的文章是關於傳統方式和Maven方式的依賴庫的不同,並說明 Maven 會從那裏搜索這些庫。 -
定制庫到Maven本地資源庫
很多庫仍然不支持 Maven 的 pom.xml 的概念,這裏有一個指南來說明如何包括“非Maven支持”庫到 Maven 本地資源庫中。
基於Maven專案和Eclipse IDE
實例是使用Maven創建Java專案和Web應用程式,以及演示如何將其導入到Eclipse IDE中。
-
使用Maven創建Java專案
使用 Maven 來創建一個 Java 專案。 -
轉換基於Maven的Java專案支持Eclipse IDE
指導轉換基於Maven的Java專案來支持在 Eclipse IDE 中。 -
使用Maven創建Web應用程式專案
使用Maven來創建Web應用程式專案。 -
轉換基於Maven的Web應用程式支持Eclipse IDE
Maven轉換基於Web應用程式來支持Eclipse IDE中指南。 -
使用Maven範本創建專案
另外,您也可以從 Maven 的範本來創建標準專案。
Maven基本操作
一些基本的操作,編譯,構建,單元測試,安裝,網站生成和基於Maven部署專案。
-
使用Maven構建專案
“mvn package” 來構建專案 -
使用Maven清理專案
“mvn clean” 來清理專案 -
使用Maven運行單元測試
“mvn test” 來執行單元測試 -
將專案安裝到Maven本地資源庫
“mvn install” 打包和部署專案到本地資源庫 -
生成基於Maven的專案文檔站點
“mvn site” 來為您的專案生成資訊文檔站點 -
使用“mvn site-deploy”部署站點(WebDAV例子)
“mvn site-deploy” 通過WebDAV部署自動生成的文檔站點到伺服器 -
部署基於Maven的war檔到Tomcat
“mvn tomcat:deploy” 以 WAR 檔部署到 Tomcat
Maven參考