Maven是一款跨平臺(tái)的項(xiàng)目管理工具柬讨,作為Apache組織中的一個(gè)頗為成功的開源項(xiàng)目崩瓤,Maven主要是服務(wù)于基于Java平臺(tái)的項(xiàng)目構(gòu)建、依賴管理和項(xiàng)目信息管理踩官。無(wú)論是小型的開源類庫(kù)項(xiàng)目却桶,還是大型的企業(yè)級(jí)應(yīng)用:無(wú)論是傳統(tǒng)的瀑布式開發(fā),還是流行的敏捷模式蔗牡,Maven都能大顯身手颖系。
Ant,是一個(gè)將軟件編譯、測(cè)試辩越、部署等步驟聯(lián)系在一起加以自動(dòng)化的一個(gè)工具嘁扼,大多用于Java環(huán)境中的軟件開發(fā)。它最早是用來(lái)構(gòu)造Tomcat的黔攒,創(chuàng)作Ant的動(dòng)機(jī)就是受不了Makefile的語(yǔ)法格式趁啸,我們可以將Ant看作一個(gè)Java版本的Make,也正因?yàn)槭褂昧薐ava督惰,Ant是跨平臺(tái)的不傅。
Maven和Ant針對(duì)構(gòu)建問(wèn)題的兩個(gè)不同方面。Ant為Java技術(shù)開發(fā)項(xiàng)目提供跨平臺(tái)構(gòu)建任務(wù)赏胚。Maven本身描述項(xiàng)目的高級(jí)方面访娶,它從Ant借用了絕大多數(shù)構(gòu)建任務(wù)。因此觉阅,由于Maven和Ant代表兩個(gè)差異很大的工具崖疤,所以接下來(lái)只說(shuō)明這兩個(gè)工具的等同組件之間的區(qū)別秘车。
Maven希望把軟件開發(fā)中的一些最佳實(shí)踐和模式都整合和固化下來(lái),這樣使用Maven來(lái)進(jìn)行開發(fā)時(shí)戳晌,開發(fā)過(guò)程更爽鲫尊,生產(chǎn)出來(lái)的軟件更棒,具有以上所羅列的各種特性沦偎。
這幾種特性對(duì)于一個(gè)團(tuán)隊(duì)一起高效的開發(fā)協(xié)作的確是非常重要的疫向。Maven最初的誕生就是希望Apache的一些項(xiàng)目能夠以相同的方式來(lái)開發(fā)和構(gòu)建,這樣一個(gè)開發(fā)者從一個(gè)項(xiàng)目轉(zhuǎn)到另外一個(gè)項(xiàng)目工作的時(shí)候能夠更加輕松地切換豪嚎。因?yàn)轫?xiàng)目的開發(fā)搔驼、測(cè)試、文檔生成侈询、報(bào)表和部署舌涨,都具有一些共同的特征,這些特征就可以認(rèn)為是軟件開發(fā)過(guò)程中的一些最佳實(shí)踐扔字,當(dāng)這些最佳實(shí)踐成為共識(shí)囊嘉,開發(fā)的協(xié)作必然會(huì)更加高效。
1.簡(jiǎn)單革为。Maven暴露了一組一致扭粱、簡(jiǎn)潔的操作接口,能幫助團(tuán)隊(duì)成員從原來(lái)的高度自定義的震檩、復(fù)雜的構(gòu)建系統(tǒng)中解脫出來(lái)琢蛤,使用Maven現(xiàn)有的成熟的、穩(wěn)定的組件也能簡(jiǎn)化構(gòu)建系統(tǒng)的復(fù)雜程度抛虏。
2.交流與反饋博其。與版本系統(tǒng)結(jié)合后,所有人都能執(zhí)行最新的構(gòu)建并快速得到反饋迂猴。此外慕淡,自動(dòng)生成的項(xiàng)目報(bào)告也能幫助成員了解項(xiàng)目的項(xiàng)目的狀態(tài),促進(jìn)團(tuán)隊(duì)的交流沸毁。
3.測(cè)試驅(qū)動(dòng)開發(fā)峰髓。測(cè)試驅(qū)動(dòng)開發(fā)強(qiáng)調(diào)測(cè)試先行,所有產(chǎn)品都應(yīng)該由測(cè)試用例覆蓋以清。而測(cè)試是Maven生命周期的最重要的組成部分之一儿普,并且Maven有現(xiàn)成的成熟插件支持業(yè)界流行的測(cè)試框架。
4.十分鐘構(gòu)建掷倔。十分鐘構(gòu)建強(qiáng)調(diào)我們能夠隨時(shí)快速地從源碼構(gòu)建出最終的產(chǎn)品眉孩。這正是Maven所擅長(zhǎng)的,只需要一些配置,之后用一條簡(jiǎn)單命令就能讓Maven幫你清理浪汪,編譯巴柿,測(cè)試,打包死遭,部署广恢,然后得到最終產(chǎn)品。
5.持續(xù)集成呀潭。持續(xù)集成強(qiáng)調(diào)項(xiàng)目以很短的周期集成最新的代碼钉迷。實(shí)際上,持續(xù)集成的前提是源碼管理系統(tǒng)和構(gòu)建系統(tǒng)钠署。使用Maven后糠聪,持續(xù)集成會(huì)變得更加方便。
-----------------------------------------------------------------------------------------------------------------------
技能樹.IT修真院
“我們相信人人都可以成為一個(gè)工程師谐鼎,現(xiàn)在開始舰蟆,找個(gè)師兄,帶你入門狸棍,掌控自己學(xué)習(xí)的節(jié)奏身害,學(xué)習(xí)的路上不再迷茫”草戈。
這里是技能樹.IT修真院塌鸯,成千上萬(wàn)的師兄在這里找到了自己的學(xué)習(xí)路線,學(xué)習(xí)透明化猾瘸,成長(zhǎng)可見化界赔,師兄1對(duì)1免費(fèi)指導(dǎo)丢习∏4ィ快來(lái)與我一起學(xué)習(xí)吧 !IT修真院:http://www.jnshu.com/login/1/13516932