先看看maven提供的默認 archetypehtml
mvn archetype:generatespring
能夠看到,默認是 7( org.apache.maven.archetypes:maven-archetype-quickstart),這個和使用IDE的效果看到事同樣的,輸入groupId和artifactId,一步步來,項目就好啦,發現下面把這兩個寫反了,好尷尬,中午的酒精在做祟嗎。apache
在不少狀況下,默認提供的還不能知足要求,好比咱們公司就要弄一個什麼統一框架,本身還對spring作了封裝,一個好處就是好接手別人的項目,因此咱們須要自定義archetype(http://maven.apache.org/archetype/maven-archetype-plugin/index.html)。框架
而後我建立了一個myarche,如下是項目的目錄結構,主要是多了archetype.cmlmaven
接着咱們來操做一下,在pom.xml中加入build插件ide
而後咱們執行一下mvn archetype:create-from-project,代表Archetype已經建立,在target\generated-sources\archetype中ui
而後進入這個目錄,執行mvn install,success代表Archetype已經成功安裝到本地倉庫,下面能夠看到安裝目錄。idea
而後咱們mvn archetype:generate -DarchetypeCatalog=local,能夠看到本地就這樣一個插件
在/.m2中會生成一個archetype-catalog.xmlxml
不過 我發現其餘目錄竟然不行,找不到緣由,這個問題困擾住了我了,還沒發現哪裏配置有問題(????智商捉急),可是在idea中根據包名導入都是能夠的,執行mvn archetype:generate -DarchetypeCatalog=local -X 發現並無去加載archetype-catalog.xml (假期最後一天對本身好一點,睡覺)
而後根據myarche-archetype建立一個項目hell,你看的就是這樣的。