發布時間: 2018-08-16 01:00:36
?Maven基本概念
在不用Maven的時候,比如說以前我們用Ant構建項目,在項目目錄下,往往會看到一個名為/lib的子目錄,那里存放著各類第三方依賴jar文件,如log4j.jar,junit.jar等等。每建立一個項目,你都需要建立這樣的一個/lib目錄,然后復制一對jar文件,這是很明顯的重復。重復永遠是噩夢的起點,多個項目不共用相同的jar文件,不僅會造成磁盤資源的浪費,也使得版本的一致性管理變得困難。此外,如果你使用版本管理工具,如github(你沒有使用版本管理工具?馬上試試SVN吧,它能幫你解決很多頭疼的問題),你需要將大量的jar文件提交到代碼庫里,可是版本管理工具在處理二進制文件方面并不出色。
Maven倉庫就是放置所有JAR文件(WAR,ZIP,POM等等)的地方,所有Maven項目可以從同一個Maven倉庫中獲取自己所需要的依賴JAR,這節省了磁盤資源。此外,由于Maven倉庫中所有的JAR都有其自己的坐標,該坐標告訴Maven它的組ID,構件ID,版本,打包方式等等,因此Maven項目可以方便的進行依賴版本管理。你也不在需要提交JAR文件到SCM倉庫中,你可以建立一個組織層次的Maven倉庫,供所有成員使用。
簡言之,Maven倉庫能幫助我們管理構件(主要是JAR)。
Maven是一個跨平臺的項目管理工具,它是基于項目對象模型(POM),主要用于基于java平臺的項目構建,依賴管理,以通過一小段描述信息來管理項目的構建,報告和文檔的軟件項目管理工具。
項目構建
? 項目構建過程包括【清理項目】→【編譯項目】→【測試項目】→【生成測試報告】→【打包項目】→【部署項目】這幾個步驟,這六個步驟就是一個項目的完整構建過程。? 理想的項目構建是高度自動化,跨平臺,可重用的組件,標準化的,使用maven就可以幫我們完成上述所說的項目構建過程。?
依賴管理
?依賴指的是jar包之間的相互依賴,比如我們搭建一個Struts2的開發框架時,光光有struts2-core-2.3.16.3.jar這個jar包是不行的,struts2-core-2.3.16.3.jar還依賴其它的jar包,依賴管理指的就是使用Maven來管理項目中使用到的jar包,Maven管理的方式就是“自動下載項目所需要的jar包,統一管理jar包之間的依賴關系”。?使用Maven的好處
?Maven中使用約定,約定java源代碼代碼必須放在哪個目錄下,編譯好的java代碼又必須放到哪個目錄下,這些目錄都有明確的約定。
Maven的每一個動作都擁有一個生命周期,例如執行 mvn install 就可以自動執行編譯,測試,打包等構建過程
只需要定義一個pom.xml,然后把源碼放到默認的目錄,Maven幫我們處理其他事情
使用Maven可以進行項目高度自動化構建,依賴管理(這是使用Maven較大的好處),倉庫管理。
為什么要使用maven
? 一個基本web項目是從視圖層(H5,CSS,Js等前端技術)到控制層(SpringMVC,Struts2)到事務處理層(Spring IOC,AOP)再到持久層(SpringData,Hibernate,Mybatis)最后到數據庫(Mysql,Oracle,Mongodb等)。咦?。?!好像沒有Maven什么事?
但我們試想:
①如果給一個項目添加 jar 包,我們是不是手動COPY到WEB-INF/lib目錄下的?
②如果 jar 包之間發生依賴問題和版本沖突?
③如果項目多了,相同 jar 包占用的存儲空間會越來越大,我們是不是要犯強迫癥了?
怎么解決?
借助Maven,使其以一種規范的方式下載設置的jar包
Maven在下載jar包的同時,還會自動將被依賴的jar導入
可以設置一個Maven pom父項目來管理jar包,讓其他項目繼承它
當項目越來越復雜,規模越來越大的時候,Maven的作用就會越來越明顯。
Maven是一款服務于Java平臺用的自動化構建工具,同時它也是用Java編寫的。
Maven下載
下載地址:https://maven.apache.org
得到一個壓縮包,解壓,可以看到maven的組成目錄,maven路徑最好不要包括中文
Maven目錄分析
bin:含有mvn運行的腳本
boot:含有plexus-classworlds類加載器框架
conf:含有settings.xml配置文件
lib:含有Maven運行時所需要的java類庫
LICENSE.txt, NOTICE.txt,
README.txt針對Maven版本,第三方軟件等簡要介紹
Maven安裝
1) 首先要確保電腦上已經安裝了JDK(要jdk 1.6+的版本),配置好JDK的環境變量
2) 對下載的壓縮文件進行解壓縮解壓到如下目錄(解壓目錄最好不要有中文)
3) 設置系統環境變量:MAVEN_HOME
?4) 設置環境變量Path,將%MAVEN_HOME%\bin加入Path中,一定要注意要用分號;與其他值隔開,如下圖所示:
?%MAVEN_HOME%\bin代表的就是"D:\JavaUtilsIdea\Maven3.5\bin"目錄
?
5) 驗證Maven安裝是否成功
打開cmd窗口
輸入"mvn –v"命令 查看Maven的相關信息,如下圖所示:
上一篇: {HTML5}基礎核心-第一節-上
下一篇: {人工智能}python之循環語句