說明:本文說的骨架就是 archetype,也可以理解為模板,總之就是指你創建項目時的基本配置。
前言:在使用IDEA創建maven的web項目時,一般都是直接使用提供的默認web項目,如圖

然而創建之后,整個項目就幾乎都是默認配置,什么都沒有。

那么問題來了,(前提是使用maven)我能不能創建一個ssm的web項目骨架,作為一個模板,然后以后
直接按着這個模板創建呢?這樣的話就不用每次都修改web.xml、pom.xml這些東西了,也不用每次添加
各種ssm的配置文件了。答案是可以的。方法如下:
1、搭建好基本的項目骨架

上面就是我常用的骨架,主要就是一些配置文件和web.xml、pom.xml的內容
為什么沒有java、test的源代碼文件夾呢?因為我之前試過了,當配置的時候,這些文件夾
都沒有生成,生成的只有resource文件夾,我還沒系統學習maven,所以具體也不知道原因。
但是,即使是這些配置文件就已經滿足我的需求了,至少不用每次想練個ssm的demo都要重新配置
2.使用maven的命令創建骨架
在1步驟搭建好骨架之后,需要創建maven的archetype(骨架),也就是生成一些相關的東西,比如jar包。
在項目的根目錄下(即項目的pom.xml文件所在目錄)下執行maven命令:
1 mvn archetype:create-from-project
然后就創建成功了,如下圖

3.使用maven的命令安裝骨架
在archetype的根目錄下(即: 項目根目錄\target\generated-sources\archetype)再執行以下maven命令:
1 mvn install
這樣就把該archetype安裝到了本地的maven 倉庫中了
錯誤:
但是,我遇到了一點問題,錯誤我忘了截圖,反正就是說在倉庫中找不到目錄,
No such file or directory
如果碰到這個問題,不要慌,那是因為倉庫中沒有創建文件夾。
文件夾的名字應該是groupId的值。創建之后,再次執行 maven install 就能安裝成功了。
4.使用archetype
使用可以用maven命令行的方式,但在本文中是使用IDEA。
當你在你的maven倉庫中看到你安裝的骨架之后,就可以在IDEA中添加archetype了。
添加方式如下

在創建maven項目時,選擇Create from archetype,然后點擊Add Archetype
之后就在彈出窗口填上你的 groupId、artifactId、version就可以了。
然后選擇你剛創建的模板就可以創建成功了。
補充:
1、使用范圍
按照上面方法創建的骨架,一般都是你本地電腦使用的,也就是說如果別人想用,需要用另外的方法。
這里就不闡述了。
2、刪除骨架
當你不想使用這個骨架,或者骨架有誤的時候,需要刪除,該怎么刪除呢?主要是刪除兩個地方的東西。
步驟如下:
(1)刪除IDEA中的骨架
主要是要刪除UserArchetypes.xml文件的內容。不同操作系統的位置不一樣。
Mac系統:
一般是在${...}/.IntelliJIdea2018.3/Maven/Indices/UserArchetypes.xml
Linux系統:
一般是在${...}/.IntelliJIdea2018.3/system/Maven/Indices/UserArchetypes.xml
Windows系統:
一般是在${...}/.IntelliJIdea2018.3/system/Maven/Indices/UserArchetypes.xml
${...}指的是你的安裝路徑,以你的為主
主要就是這個路徑下有個UserArchetypes.xml文件,然后打開刪除里面的<archetype>標簽即可
(2)刪除maven倉庫中的骨架
直接在你的本地倉庫中按照你創建的骨架的groupId、artifactId尋找,之后刪除文件夾即可。
比如我這里是直接刪掉my文件夾就行了。
3.骨架命名
你的自定義骨架的groupId千萬不要跟常見的名詞重復,不然就會哭到爆。
命名是以這個來的 groupId、artifactId、version
比如我的骨架是groupId是my
然后我就用這個骨架新建項目,然后我就填一般的groupId和artifactId。

也就是說 你的自定義骨架是my.yellow-archetype
你用這個骨架創建的項目是cn.test
你就會發現你創建的項目里面,所有出現mybatis的詞的地方,都變成了cnbatis

所以綜上所述,把你的groupId命名為亂七八糟就行了,比如fsjdghsjkghsji
參考鏈接:
https://blog.csdn.net/qq_21251983/article/details/52252970?utm_source=blogxgwz6
https://stackoverflow.com/questions/4361567/where-are-added-archetypes-stored-in-intellij
