摘要:例如,可以提供更改日志用源碼管理工具生成交叉引用郵件列表依賴清單單元測試報告含覆蓋率提供開發(fā)過程的最佳實踐指南通過收集現(xiàn)行的開發(fā)最佳實踐,來指導用構(gòu)建的項目。
問題:Maven是啥?本文大約1026個字,閱讀時間4分鐘。 主要介紹了Maven名字的由來、Maven產(chǎn)生的背景和Maven的主要功能。
大多數(shù)人都用Maven來管理Java項目的依賴,這個應該是Maven的主要功能沒跑了,不過我們還是帶著這個問題自己去探索吧!
名字由來:根據(jù)Maven官網(wǎng)的解釋,Maven這個單詞來自意第緒語,意為知識的積累者(accumulator of knowledge),Wikipedia上的解釋是:在特定領(lǐng)域極具權(quán)威并且樂于將知識分享、傳承給他人的專家。咳咳……老外給項目起名字就是有(ai)意(zhuang)思(bi)。
背景介紹:Maven當初是為了簡化Jakarta和Turbine兩個項目的構(gòu)建過程而誕生的。這些項目當初有各自的Ant構(gòu)建文件并且還有共同使用的JAR文件被重復的提交到CVS上。因此Maven試圖將所有Java項目的構(gòu)建過程標準化;確保一個項目的組成部分有清晰明確的定義;可以方便的發(fā)布項目;可以共享多個項目用到的JAR文件。
它的目標:讓開發(fā)人員可以在較短的時間內(nèi)快速厘清項目結(jié)構(gòu),更快理解整個項目。為了達到這個目的,Maven從以下幾個方面入手:
簡化項目構(gòu)建過程
提供統(tǒng)一的構(gòu)建系統(tǒng)
提供有效/高質(zhì)量的項目信息
提供開發(fā)過程的最佳實踐指南
透明遷移到新功能
目標說明:簡化項目構(gòu)建過程
雖然使用Maven進行項目構(gòu)建時,你還是需要對底層機制有所了解,但是Maven還是做了不少工作來對你隱藏這些繁瑣的細節(jié)。
提供統(tǒng)一的構(gòu)建系統(tǒng)
Maven是通過POM(Project Object Model)文件和一系列插件(Plugin)來構(gòu)建項目的。當你熟悉了某一個用Maven構(gòu)建的項目,那么對于其他用Maven構(gòu)建的項目你也可以快速熟悉。
提供有效/高質(zhì)量的項目信息
Maven可以通過POM文件以及項目的源代碼來生成項目信息。例如,Maven可以提供:
更改日志(用源碼管理工具生成)
交叉引用
郵件列表
依賴清單
單元測試報告(含覆蓋率)
提供開發(fā)過程的最佳實踐指南
Maven通過收集現(xiàn)行的開發(fā)最佳實踐,來指導用Maven構(gòu)建的項目。例如:單元測試是Maven構(gòu)建中的一個部分,Maven對單元測試應用如下的最佳實踐:
把單元測試代碼和項目代碼分開,但是在平級的源碼樹中
使用測試用例命名約定來定位和執(zhí)行測試
讓測試用例來初始化測試環(huán)境而不是為測試構(gòu)建特定的版本
Maven還可以為項目的目錄結(jié)構(gòu)、發(fā)布管理、缺陷追蹤提供指導和幫助。
透明遷移到新功能
當Maven/Maven插件更新時,無須做改動/較少改動,即可享受新功能
它不是……建站工具或文檔管理工具
可以下載依賴的Ant擴展
一組可重用的Ant腳本
結(jié)語本文是百科百面系列的第一篇文章,也是Maven專題的第一篇文章,對于文章的形式、內(nèi)容或者技術(shù)專題有想法的朋友,歡迎留言~
下一篇文章將會帶大家一起安裝和體驗Maven,下次見!
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/70197.html
摘要:登錄網(wǎng)站,生成一個基本的應用。將應用導入并創(chuàng)建類。連接,執(zhí)行命令,查看可用的鏡像執(zhí)行命令,使用鏡像啟動容器。至此,使用插件構(gòu)建鏡像并運行容器完成,訪問路徑,獲得結(jié)果 1.登錄網(wǎng)站https://start.spring.io/,生成一個基本的SpringBoot應用。 2.將應用導入Eclipse IDE并創(chuàng)建Application類。目錄結(jié)構(gòu)如下: showImg(https://s...
摘要:登錄網(wǎng)站,生成一個基本的應用。將應用導入并創(chuàng)建類。連接,執(zhí)行命令,查看可用的鏡像執(zhí)行命令,使用鏡像啟動容器。至此,使用插件構(gòu)建鏡像并運行容器完成,訪問路徑,獲得結(jié)果 1.登錄網(wǎng)站https://start.spring.io/,生成一個基本的SpringBoot應用。 2.將應用導入Eclipse IDE并創(chuàng)建Application類。目錄結(jié)構(gòu)如下: showImg(https://s...
摘要:看看自己的項目的那些文件或者干脆連個建表語句都沒有的同學是否會有想法把他們管理起來呢向大家推薦一款非常輕量級的敏捷數(shù)據(jù)庫遷移框架。 showImg(http://segmentfault.com/img/bVbV7p); 看看自己的項目的那些SQL文件或者干脆連個建表語句都沒有的同學是否會有想法把他們管理起來呢?向大家推薦一款非常輕量級的敏捷數(shù)據(jù)庫遷移框架——Flyway。想知道她有什...
閱讀 1704·2021-09-26 09:55
閱讀 3743·2021-09-22 15:31
閱讀 7457·2021-09-22 15:12
閱讀 2223·2021-09-22 10:02
閱讀 4696·2021-09-04 16:40
閱讀 1076·2019-08-30 15:55
閱讀 3034·2019-08-30 12:56
閱讀 1826·2019-08-30 12:44