首先拋出一個問題是為什么要構建自定義的腳手架,maven已經為了我么提供了很多腳手架,方便我們快速的創建一個普通java項目或者是web項目,然而在實際開發中,例如銀行項目,大部分都是ssm架構,我們完全可以抽取出一個公共的模板,方便后續項目的構建,再比如分布式開發中我們通常會構建多個子模塊,這樣的構建是很耗時的,我們也完全可以將搭建好的項目構建成為自己的腳手架,方便后續有類似的項目開發。構建過程如下:
1、定義自己的項目,搭建基礎的框架,添加基礎設施,這里做一個簡單地demo
2、進入項目根目錄下,打開終端或者cmd命令窗口,執行 mvn archetype:create-from-project 生成腳手架,然后進入target/generated-sources/archetype目錄下,可以看到腳手架已經生成,執行mvn clean install 安裝到本地倉庫,這樣腳手架就安裝成功
3、利用腳手架創建新的項目,新建一個空白目錄,進入后執行 mvn archetype:generate -DarchetypeCatalog=local 然后等待命令提示,選擇你的腳手架並且輸入group、archetype、version后,mvn便會自己將項目創建好,這里需要注意的是 -DarchetypeCatalog=local這個參數,如果不添加則mvn會去遠程加載archetypeCatalog.xml文件,這個文件是非常大的,構建過程也會變的很慢,指定后則會去讀取本地的archetypeCatalog.xml文件,這個文件在我們構建腳手架時會被自動在本地mvn倉庫中創建。
4、將項目導入ide中可以看到所有的基礎包和類都被完整的構建出來,直接可以基於此進行新項目的開發