天天看點

《Maven官方文檔》什麼是原型(Archrtype)?什麼是原型?使用Archetype可供使用的Archetype原型的構成

簡單來說,原型(archetype)是一個maven工程模闆工具包。一個原型被定義為一個提供相同性質内容的原始樣式或模型。這個名字适合當我們試圖提供一個系統,這個系統提供了一個一緻的方式生成maven項目。原型将幫助作者為使用者建立maven工程模闆,并且為使用者提供方法去使用參數來調整生成的工程模闆。

使用原型提供了一個很好的方式,使開發人員快速的符合你的項目或組織的最佳實踐,在maven項目中,我們提供了一個示範了maven多種特性的示例工程,以此希望幫助我們的使用者盡快的啟動并運作,同時引導新使用者使用maven的最佳實踐。幾秒之内,新使用者就可以使用maven項目工作,并以此為跳闆了解maven的更多的特性。我們也試着去為原型加入可添加機制,通過這種方法允許工程的一部分被一個原型捕獲,來使這一部分工程能夠直接加入的另一個已經存在的工程。這方面一個比較好的例子是maven site archetype。舉個例子,如果你已經用quick start原型生成了一個工程,你同樣能通過在已存在的工程中使用site archetype來快速的生成一個這個工程的站點。你可以用原型來做任何像這樣的事情。

可能你想在你的組織中标準化j2ee開發,于是你想去提供ejbs或wars的原型,或者為你的web服務提供原型。當這些原型建立并應用到你的組織的倉庫裡,它們就可以被你組織裡的所有開發者使用了。

基于archetype來建立一個新工程,你隻需要調用  mvn archetype:generate目标,就像這樣:

譯者注: mvn archetype:generate 指令會從遠端拉取所有的原型(大約1575個)供你選擇,使用-darchetypeartifavtid=[archetype]參數可以指定archetype類型。如果卡在generating project in interactive mode這一步,是因為maven在從遠端拉取資訊,使用 -darchetypecatalog=internal 參數讓它不要從遠端伺服器上取catalog。

maven提供了一些可用的archetype:

archetype artifactids

description

maven-archetype-archetype

生成一個示例原型工程

maven-archetype-j2ee-simple

生成一個簡單的j2ee應用示例

maven-archetype-mojo

生成maven plugin 例子的示例

maven-archetype-plugin

生成maven plugin示例

maven-archetype-plugin-site

生成maven plugin site示例

maven-archetype-portlet

生成jsr-268元件示例

maven-archetype-quickstart

生成maven quickstart工程示例

maven-archetype-simple

生成一個簡單的maven工程

maven-archetype-site

生成一個展示可支援的格式的文檔的站點,例如 apt, xdoc, fml, 并且展示如何國際化你的站點。

maven-archetype-site-simple

生成一個maven site 示例

maven-archetype-webapp

生成maven webapp工程示例