使用Maven來(lái)管理項目的想法由來(lái)已久,可是一直沒(méi)逮到機會(huì ).對于一般的項目而言,使用Ant已經(jīng)足夠了.看到Tirsen‘blog中說(shuō)使用Maven和ant構建非常龐大的系統,效果很好.不行,再不用,就真的沒(méi)機會(huì )了.
在Maven中有幾個(gè)重要的概念需要了解:
project object model (POM)
Maven is based on the concept of a project object model (POM) in that all the artifacts produced by Maven are a result of consulting a well defined model for your project.Builds, documentation, source metrics, source cross-references and anything else that may be provided by a Maven plug-in are all controlled by your POM.
POM可以修改,并且還可以繼承.
Plug-ins
Maven is in essence a small core that works with a satellite of plug-ins. All functionality provided by Maven is done so in the form of plug-ins.
Goals
A goal is a werkz tag similar in nature to an Ant target ; it‘s a named container for a set of tags to be executed.
Maven是用Jelly作為自己的腳本語(yǔ)言,因此在編寫(xiě)自己的Goal時(shí),需要了解一些Jelly的基本知識.
在Maven中,還有一些配置文件,如:project.xml,maven.xml,project.properties等.project.xml是項目的主配置文件,沒(méi)有該文件Maven是不能執行的.文件中包含的屬性,元素可以參考它的xsd文件.
一般在make java app時(shí),都會(huì )應用很多其它的jar文件,在Maven中它提供了Repository,在這里它存有很多的jar文件.當然,在Repository中也存有Maven執行的一些類(lèi)庫文件.
如果,你第一次運行Maven時(shí),它會(huì )從網(wǎng)上的Repository下載需要的類(lèi)庫.如果此時(shí),網(wǎng)絡(luò )是斷的,就不行了.
運行Maven的site:generate,可以生成一個(gè)關(guān)于項目信息和項目報告的網(wǎng)站,所有的頁(yè)面都是html格式的.其中,包含非常豐富的項目信息:項目組成員,郵件列表,單元測試,javadoc等等.這樣,就可以讓人能大致把握住項目的概括.
試試吧,你會(huì )喜歡它的!
聯(lián)系客服