2 回答

TA貢獻(xiàn)1890條經(jīng)驗(yàn) 獲得超9個(gè)贊
Maven是基于項(xiàng)目對象模型(POM),可以通過一小段描述信息來管理項(xiàng)目的構(gòu)建,報(bào)告和文檔的軟件項(xiàng)目管理工具。
Maven 除了以程序構(gòu)建能力為特色之外,還提供高級項(xiàng)目管理工具。由于 Maven 的缺省構(gòu)建規(guī)則有較高的可重用性,所以常常用兩三行 Maven 構(gòu)建腳本就可以構(gòu)建簡單的項(xiàng)目。由于 Maven 的面向項(xiàng)目的方法,許多 Apache Jakarta 項(xiàng)目發(fā)文時(shí)使用 Maven,而且公司項(xiàng)目采用 Maven 的比例在持續(xù)增長。
Maven這個(gè)單詞來自于意第緒語,意為知識(shí)的積累,最早在Jakata Turbine項(xiàng)目中它開始被用來試圖簡化構(gòu)建過程。當(dāng)時(shí)有很多項(xiàng)目,它們的Ant build文件僅有細(xì)微的差別,而JAR文件都由CVS來維護(hù)。于是Maven創(chuàng)始者開始了Maven這個(gè)項(xiàng)目,該項(xiàng)目的清晰定義包括,一種很方便的發(fā)布項(xiàng)目信息的方式,以及一種在多個(gè)項(xiàng)目中共享JAR的方式。
Maven是一個(gè)項(xiàng)目管理工具,它包含了一個(gè)項(xiàng)目對象模型 (Project Object Model),一組標(biāo)準(zhǔn)集合,一個(gè)項(xiàng)目生命周期(Project Lifecycle),一個(gè)依賴管理系統(tǒng)(Dependency Management System),和用來運(yùn)行定義在生命周期階段(phase)中插件(plugin)目標(biāo)(goal)的邏輯。當(dāng)你使用Maven的時(shí)候,你用一個(gè)明確定義的項(xiàng)目對象模型來描述你的項(xiàng)目,然后Maven可以應(yīng)用橫切的邏輯,這些邏輯來自一組共享的(或者自定義的)插件。
Maven 有一個(gè)生命周期,當(dāng)你運(yùn)行 mvn install 的時(shí)候被調(diào)用。這條命令告訴 Maven 執(zhí)行一系列的有序的步驟,直到到達(dá)你指定的生命周期。遍歷生命周期旅途中的一個(gè)影響就是,Maven 運(yùn)行了許多默認(rèn)的插件目標(biāo),這些目標(biāo)完成了像編譯和創(chuàng)建一個(gè) JAR 文件這樣的工作。
此外,Maven能夠很方便的幫你管理項(xiàng)目報(bào)告,生成站點(diǎn),管理JAR文件,等等。
添加回答
舉報(bào)