Maven入門(2) 之 Maven幫助我們解決什么問題妖滔?

為什么要使用 Maven?它能幫助我們解決什么問題桶良?

1座舍、添加第三方 jar 包

??在今天的 JavaEE 開發(fā)領(lǐng)域,有大量的第三方框架和工具可以供我們使用陨帆。要使用這些 jar 包最簡單的方法就是復(fù)制粘貼到 WEB-INF/lib 目錄下曲秉。但是這會導(dǎo)致每次創(chuàng)建一個新的工程就需要將 jar 包重復(fù)復(fù)制到 lib 目錄下,從而造成工作區(qū)中存在大量重復(fù)的文件疲牵,讓我們的工程顯得很臃腫承二。

??而使用 Maven 后每個 jar 包本身只在本地倉庫中保存一份,需要 jar 包的工程只需要以坐標(biāo)的方式簡單的引用一下就可以了纲爸。不僅極大的節(jié)約了存儲空間亥鸠,讓項(xiàng)目更輕巧,更避免了重復(fù)文件太多而造成的混亂识啦。

2负蚊、jar 包之間的依賴關(guān)系

??jar 包往往不是孤立存在的,很多 jar 包都需要在其他 jar 包的支持下才能夠正常工作颓哮,我們稱之為jar 包之間的依賴關(guān)系盖桥。最典型的例子是:commons-fileupload-1.3.jar 依賴于 commons-io-2.0.1.jar,如果沒有 IO 包题翻,F(xiàn)ileUpload 包就不能正常工作揩徊。

??那么問題來了腰鬼,你知道你所使用的所有 jar 包的依賴關(guān)系嗎?當(dāng)你拿到一個新的從未使用過的 jar包塑荒,你如何得知他需要哪些 jar 包的支持呢熄赡?如果不了解這個情況,導(dǎo)入的 jar 包不夠齿税,那么現(xiàn)有的程序?qū)⒉荒苷9ぷ鞅肆颉T龠M(jìn)一步,當(dāng)你的項(xiàng)目中需要用到上百個 jar 包時凌箕,你還會人為的拧篮,手工的逐一確認(rèn)它們依賴的其他 jar 包嗎?這簡直是不可想象的牵舱。

??而引入 Maven 后串绩,Maven 就可以替我們自動的將當(dāng)前 jar 包所依賴的其他所有 jar 包全部導(dǎo)入進(jìn)來,無需人工參與芜壁,節(jié)約了我們大量的時間和精力礁凡。用實(shí)際例子來說明就是:通過 Maven 導(dǎo)入commons-fileupload-1.3.jar 后,commons-io-2.0.1.jar 會被自動導(dǎo)入慧妄,程序員不必了解這個依賴關(guān)系顷牌。

3、獲取第三方 jar 包

??JavaEE 開發(fā)中需要使用到的 jar 包種類繁多塞淹,幾乎每個 jar 包在其本身的官網(wǎng)上的獲取方式都不盡相同窟蓝。為了查找一個 jar 包找遍互聯(lián)網(wǎng),身心俱疲饱普,沒有經(jīng)歷過的人或許體會不到這種折磨疗锐。不僅如此,費(fèi)勁心血找的 jar 包里有的時候并沒有你需要的那個類费彼,或者同名的類沒有你要的方法——以不規(guī)范的方式獲取的 jar 包也往往是不規(guī)范的滑臊。

??使用 Maven 我們可以享受到一個完全統(tǒng)一規(guī)范的 jar 包管理體系。你只需要在你的項(xiàng)目中以坐標(biāo)的
方式依賴一個 jar 包箍铲,Maven 就會自動從中央倉庫進(jìn)行下載雇卷,并同時下載這個 jar 包所依賴的其他 jar 包——規(guī)范、完整颠猴、準(zhǔn)確关划!一次性解決所有問題!

4翘瓮、將項(xiàng)目拆分成多個工程模塊

??隨著 JavaEE 項(xiàng)目的規(guī)模越來越龐大贮折,開發(fā)團(tuán)隊(duì)的規(guī)模也與日俱增。一個項(xiàng)目上千人的團(tuán)隊(duì)持續(xù)開發(fā)很多年對于 JavaEE 項(xiàng)目來說再正常不過资盅。那么我們想象一下:幾百上千的人開發(fā)的項(xiàng)目是同一個 Web工程调榄。那么架構(gòu)師踊赠、項(xiàng)目經(jīng)理該如何劃分項(xiàng)目的模塊、如何分工呢每庆?這么大的項(xiàng)目已經(jīng)不可能通過package 結(jié)構(gòu)來劃分模塊筐带,必須將項(xiàng)目拆分成多個工程協(xié)同開發(fā)。多個模塊工程中有的是 Java 工程缤灵,有的是 Web 工程伦籍。那么工程拆分后又如何進(jìn)行互相調(diào)用和訪問呢?

??這就需要用到 Maven 的依賴管理機(jī)制腮出。下面是一個單獨(dú)的大項(xiàng)目拆分成多個工程之后的架構(gòu)帖鸦。

多工程架構(gòu)圖

??上層模塊依賴下層,所以下層模塊中定義的 API 都可以為上層所調(diào)用和訪問胚嘲。所以借助于Maven就可以將一個項(xiàng)目拆分成多個工程作儿。

??這就是Maven能為我們解決的問題,可以配合我Maven的第一篇介紹慢逾,綜合整體的看一下,會有對Maven有更好的理解灭红。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末侣滩,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子变擒,更是在濱河造成了極大的恐慌君珠,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,826評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件娇斑,死亡現(xiàn)場離奇詭異策添,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)毫缆,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評論 3 395
  • 文/潘曉璐 我一進(jìn)店門唯竹,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人苦丁,你說我怎么就攤上這事浸颓。” “怎么了旺拉?”我有些...
    開封第一講書人閱讀 164,234評論 0 354
  • 文/不壞的土叔 我叫張陵产上,是天一觀的道長。 經(jīng)常有香客問我蛾狗,道長晋涣,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,562評論 1 293
  • 正文 為了忘掉前任沉桌,我火速辦了婚禮谢鹊,結(jié)果婚禮上算吩,老公的妹妹穿的比我還像新娘。我一直安慰自己撇贺,他們只是感情好赌莺,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,611評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著松嘶,像睡著了一般艘狭。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上翠订,一...
    開封第一講書人閱讀 51,482評論 1 302
  • 那天巢音,我揣著相機(jī)與錄音,去河邊找鬼尽超。 笑死官撼,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的似谁。 我是一名探鬼主播傲绣,決...
    沈念sama閱讀 40,271評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼巩踏!你這毒婦竟也來了秃诵?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,166評論 0 276
  • 序言:老撾萬榮一對情侶失蹤塞琼,失蹤者是張志新(化名)和其女友劉穎菠净,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體彪杉,經(jīng)...
    沈念sama閱讀 45,608評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡毅往,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,814評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了派近。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片攀唯。...
    茶點(diǎn)故事閱讀 39,926評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖渴丸,靈堂內(nèi)的尸體忽然破棺而出革答,到底是詐尸還是另有隱情,我是刑警寧澤曙强,帶...
    沈念sama閱讀 35,644評論 5 346
  • 正文 年R本政府宣布残拐,位于F島的核電站,受9級特大地震影響碟嘴,放射性物質(zhì)發(fā)生泄漏溪食。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,249評論 3 329
  • 文/蒙蒙 一娜扇、第九天 我趴在偏房一處隱蔽的房頂上張望错沃。 院中可真熱鬧栅组,春花似錦、人聲如沸枢析。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽醒叁。三九已至司浪,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間把沼,已是汗流浹背啊易。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留饮睬,地道東北人租谈。 一個月前我還...
    沈念sama閱讀 48,063評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像捆愁,于是被迫代替她去往敵國和親割去。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,871評論 2 354

推薦閱讀更多精彩內(nèi)容