IDEA自定義Maven archetype的方法步驟
為什么要自定義archetype
在創(chuàng)建Maven的項(xiàng)目時(shí)我們發(fā)現(xiàn)了一個(gè)很不方便的問題,就是每次創(chuàng)建Maven的工程的時(shí)候,都需要選擇一個(gè)骨架,但是每個(gè)骨架都需要?jiǎng)h除一部分東西才行,在平時(shí)開發(fā)中,如果是分布式項(xiàng)目,有可能會(huì)頻繁創(chuàng)建子項(xiàng)目,每次都要?jiǎng)h除不要的文件然后拷貝我們要的文件,例如彈簧配置,web.xml中配置等。這樣做不僅會(huì)浪費(fèi)大量時(shí)間,拷貝和刪除文件也容易導(dǎo)致錯(cuò)誤的發(fā)生,比如漏拷某文件。
Archetype maven 項(xiàng)目的組成
一個(gè)典型的Archetype Maven項(xiàng)目主要包括如下幾個(gè)部分:
- pom.xml:Archetype自身的POM。
- src/main/resources/archetype-resources/pom.xml:基于該Archetype生成項(xiàng)目的POM原型。
- src/main/resources/META-INF/maven/archetype-metadata.xml:Archetype的描述符文件。
- src/main/resources/archetype-resources/**:其他需要包含在Archetype中的內(nèi)容。
創(chuàng)建自己的骨架結(jié)構(gòu)
要?jiǎng)?chuàng)建Maven的模板,首先你要?jiǎng)?chuàng)建一個(gè)Maven的項(xiàng)目,然后再以這個(gè)項(xiàng)目作為模板。
創(chuàng)建maven工程
首先創(chuàng)建一個(gè)Maven的工程,名字叫maven-template-java-simple
選擇骨架

骨架創(chuàng)建
在maven-template-java-simple根目錄執(zhí)行
mvn archetype:create-from-project
報(bào)錯(cuò)解決
mvn archetype:create-from-project報(bào)錯(cuò)The specified user settings file does not exist
settings.xml文件可能存在兩個(gè)位置:
Maven安裝:${maven.home}/conf/settings.xml用戶安裝:${user.home}/.m2/settings.xml
前一個(gè)settings.xml也稱為全局設(shè)置,后者的settings.xml稱為用戶設(shè)置。
如果兩個(gè)文件都存在,它們的內(nèi)容將被合并,用戶特定的settings.xml看作是主要的。
如果從頭創(chuàng)建用戶特定的設(shè)置,最簡單的方法是將Maven安裝中的全局設(shè)置復(fù)制到${user.home}/.m2目錄。
Maven的默認(rèn)settings.xml是一個(gè)包含注釋和示例的模板,因此可以快速調(diào)整以滿足需求。
自定義 archetype 模板時(shí),運(yùn)行mvn archetype:create-from-project時(shí)報(bào)錯(cuò):The specified user settings file does not exist: C:\Users\modao\.m2\settings,原因是用戶配置文件不存在,把全局配置文件復(fù)制了一份過去就解決了。
執(zhí)行完畢之后,會(huì)出現(xiàn)一個(gè)編譯之后新的maven工程(target文件夾),如下圖:

骨架安裝
安裝對(duì)應(yīng)骨架項(xiàng)目
先進(jìn)入骨架項(xiàng)目的pom文件目錄:
cd target/generated-sources/archetype
執(zhí)行安裝:
mvn clean install
我們的骨架項(xiàng)目坐標(biāo)如下:
<groupId>com.terwergreen</groupId> <artifactId>maven-template-java-simple-archetype</artifactId> <version>1.0.0</version> <packaging>maven-archetype</packaging>
至此,骨架項(xiàng)目安裝成功。
使用自己創(chuàng)建的自定義骨架
創(chuàng)建新的Maven工程,選擇自定義骨架
添加骨架
創(chuàng)建新的maven工程,選擇Add Archetype,填寫剛才添加的骨架工程坐標(biāo),點(diǎn)擊OK,這是會(huì)生成一個(gè)新的骨架選項(xiàng)。
groupId com.terwergreen artifactId maven-template-java-simple-archetype version 1.0.0

選中新創(chuàng)建的骨架,點(diǎn)擊下一步創(chuàng)建新的Maven的項(xiàng)目如下,這是新建的測(cè)試項(xiàng)目:




以后再創(chuàng)建類似的Maven的項(xiàng)目時(shí),就可以快速新建的Maven項(xiàng)目而不用改來改去了。是不是很方便呢?
PS:刪除自定義archetype
cd /Users/terwer/Library/Caches/JetBrains/IntelliJIdea2021.3/Maven/Indices
然后編輯 UserArchetypes.xml 文件即可。注意:修改文件之后需要重啟IDEA。
到此這篇關(guān)于IDEA自定義Maven archetype的方法步驟的文章就介紹到這了,更多相關(guān)IDEA自定義Maven archetype內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- eclipse maven maven-archetype-webapp 創(chuàng)建失敗問題解決
- 使用Maven Archetype插件構(gòu)建Maven工程原型模板的實(shí)例
- 使用maven-archetype-plugin現(xiàn)有項(xiàng)目生成腳手架的方法
- 手把手教你寫Maven的archetype項(xiàng)目腳手架
- 教你如何在IDEA?中添加?Maven?項(xiàng)目的?Archetype(解決添加不起作用的問題)
- idea中使用maven?archetype新建項(xiàng)目時(shí)卡住問題解決方案
- maven中自定義MavenArchetype的實(shí)現(xiàn)
相關(guān)文章
關(guān)于mybatis3中@SelectProvider的使用問題
這篇文章主要介紹了mybatis3中@SelectProvider的使用技巧,@SelectProvide指定一個(gè)Class及其方法,并且通過調(diào)用Class上的這個(gè)方法來獲得sql語句,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2021-12-12
spring為java.util.Properties類型的屬性進(jìn)行賦值過程解析
這篇文章主要介紹了spring為java.util.Properties類型的屬性進(jìn)行賦值過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-01-01
如何使用MyBatis框架實(shí)現(xiàn)增刪改查(CRUD)操作
本文主要介紹了如何使用MyBatis框架實(shí)現(xiàn)增刪改查(CRUD)操作。首先介紹了MyBatis框架的基本概念和使用方法,然后分別介紹了如何使用MyBatis實(shí)現(xiàn)增刪改查操作。最后,通過一個(gè)簡單的示例演示了如何使用MyBatis框架實(shí)現(xiàn)CRUD操作。2023-05-05
springboot使用Validator校驗(yàn)方式
這篇文章主要介紹了springboot使用Validator校驗(yàn)方式,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2018-01-01

