Maven是什么?回顧Java社區(qū)的變革發(fā)布者:本站 時(shí)間:2020-05-06 14:05:20
大家應(yīng)該都知道Maven是一種Java技術(shù),是Ant的進(jìn)化,并且在Java社區(qū)中引發(fā)了一場變革。Maven提供了一套軟件項(xiàng)目管理的綜合性方案.無論是編譯,發(fā)布,文檔還是團(tuán)隊(duì)協(xié)作,Maven提供了必要的抽象,它鼓勵(lì)重用,并做了除了軟件構(gòu)建以外的許多工作.
然而,究竟Maven是什么?它就是一個(gè)工具么?
Maven是什么
Maven是一套項(xiàng)目管理框架,但這并不是Maven的全部.它是Maven作者能想得到的最顯而易見的三句話定義.但是這個(gè)名字是個(gè)毫無意義的抽象,它并沒有表達(dá)出Maven的強(qiáng)大功能和復(fù)雜性.太多的技術(shù)人員經(jīng)常使用三四個(gè)關(guān)鍵詞,來描述復(fù)雜的課題,并且重復(fù)的使用諸如"project management"和"enterprise software start"而沒有能表達(dá)出其具體的含義.
當(dāng)某人想要了解Maven是什么時(shí),他們通常會問"到底Maven是個(gè)什么東東?”,然后他們期待著一個(gè)短小的,概述的回答,"嗯,它是一個(gè)構(gòu)建工具,或者是一個(gè)腳本框架". Maven無法使用乏味的,毫無意義的單詞來解釋清楚.它是一個(gè)思想,標(biāo)準(zhǔn)以及軟件的綜合體,并且?guī)缀醪豢赡苋ヌ崛〕鲆粋€(gè)定義為一個(gè)簡單的,概述性的定義.創(chuàng)新的思想往往很難用語言表達(dá)清楚.如果你對Maven的一個(gè)全面的,豐富的定義感興趣的話,你可以閱讀本介紹.它會首先想你提供所要遵循的概念和理論. 如果你閱讀本介紹,只是為了尋找某些內(nèi)容來告訴你的主管的話,你可以現(xiàn)在就轉(zhuǎn)到第二章去了.
如果Maven不是一個(gè)"項(xiàng)目管理框架",那它是什么呢? 下面是一種描述:Maven是標(biāo)準(zhǔn)、存儲格式以及一些軟件用以管理和描述項(xiàng)目。它為構(gòu)建、測試、部署項(xiàng)目定義了一個(gè)標(biāo)準(zhǔn)的生命周期。它提供了一個(gè)框架,允許遵循Maven標(biāo)準(zhǔn)的所有項(xiàng)目,方便的重用公用的構(gòu)建邏輯。Maven項(xiàng)目存在的Apache軟件基金會,是一個(gè)開源社區(qū),它開發(fā)的軟件工具,基于一個(gè)通用的軟件對象模型(Project Object Model),也就是POM。本書重點(diǎn)關(guān)注Maven項(xiàng)目的核心部分——Maven 2,一個(gè)非常好的工具,它大大簡化了軟件項(xiàng)目的管理流程。
你可能曾經(jīng)期待過一個(gè)更為淺顯易懂的答案,或許你撿起這本書是因?yàn)槟橙嗽?jīng)告訴過你Maven是一個(gè)構(gòu)建工具。別擔(dān)心,Maven可以做一個(gè)你要尋找的構(gòu)建工具,并且很多使用Maven作為另外的構(gòu)建工具的開發(fā)者們,都得到了一個(gè)很好的經(jīng)過調(diào)優(yōu)的構(gòu)建系統(tǒng)。當(dāng)你打算將Maven作為“另一個(gè)構(gòu)建工具”的時(shí)候,以這種有限的眼光去看待Maven,就如同去說Web瀏覽器不過是看看超文本罷了。
Maven以及與其相關(guān)的技術(shù),開始在Java社區(qū)產(chǎn)生了一種變革。
除了解決淺顯易懂,以及諸如簡化構(gòu)建、文檔、發(fā)布以及部署的流程等問題以外,Maven也帶來了越來越引人注目的好處。
越來越多的項(xiàng)目和產(chǎn)品使用Maven作為他們項(xiàng)目管理的基礎(chǔ)。它變得易于在項(xiàng)目和構(gòu)建系統(tǒng)建立關(guān)系,并且在這個(gè)關(guān)系之上導(dǎo)航和做報(bào)告。Maven的標(biāo)準(zhǔn)格式允許為項(xiàng)目編碼使用一種“Semantic Web”。Maven的規(guī)范和中央倉庫為項(xiàng)目定義了一種全新的命名系統(tǒng)。使用Maven可以很容易的加入其他的依賴項(xiàng),并發(fā)布你自己的組件。
那么,現(xiàn)在來回答當(dāng)初的問題:Maven對于不同的人有不同的用途。它是一系列標(biāo)準(zhǔn)和解決問題的方式,而不僅僅只是一個(gè)軟件。它是一種將一系列軟件,使用統(tǒng)一的格式來描述,作為一個(gè)個(gè)互相依存的組件集合來處理的方式。它是個(gè)人和團(tuán)體如何協(xié)作來開發(fā)軟件系統(tǒng)的未來發(fā)展方向。一旦你理解了Maven,你就會奇怪以前沒有它是怎么做的開發(fā)。
選擇我們,優(yōu)質(zhì)服務(wù),不容錯(cuò)過
1. 優(yōu)秀的網(wǎng)絡(luò)資源,強(qiáng)大的網(wǎng)站優(yōu)化技術(shù),穩(wěn)定的網(wǎng)站和速度保證
2. 15年上海網(wǎng)站建設(shè)經(jīng)驗(yàn),優(yōu)秀的技術(shù)和設(shè)計(jì)水平,更放心
3. 全程省心服務(wù),不必?fù)?dān)心自己不懂網(wǎng)絡(luò),更省心。
------------------------------------------------------------
24小時(shí)聯(lián)系電話:021-58370032