Maven 項(xiàng)目模板

Archetype介紹

Archetype是一個(gè)Maven項(xiàng)目的模板工具包,它定義了一類項(xiàng)目的基本架構(gòu)。Archetype為開發(fā)人員提供了創(chuàng)建Maven項(xiàng)目的模板,同時(shí)它也可以根據(jù)已有的Maven項(xiàng)目生成參數(shù)化的模板。通過Archetype,開發(fā)人員可以很方便地將一類項(xiàng)目的最佳實(shí)現(xiàn)應(yīng)用到自己的項(xiàng)目中。在一個(gè)Maven項(xiàng)目中,開發(fā)者可以通過Archetype提供的范例快速入門并了解該項(xiàng)目的結(jié)構(gòu)與特點(diǎn)。
官方文檔:https://maven.apache.org/archetype/index.html

Archetype使用

IDEA中創(chuàng)建

在IDEA中,我們可以通過New Project – Maven – Create from archetype,選擇某個(gè)archetype快速創(chuàng)建模板項(xiàng)目

IDEA創(chuàng)建模板

命令創(chuàng)建
mvn archetype:generate
  • 輸入命令后,Archetype插件會(huì)輸出一個(gè)Archetype列表供用戶選擇;選擇自己想要使用的Archetype,輸入對(duì)應(yīng)編號(hào)
  • 提示輸入一些基本參數(shù),如groupId,artifactId,version,package等
  • Archetype插件生成項(xiàng)目骨架


    命令創(chuàng)建
過濾器方式創(chuàng)建

過濾器方式

跳過了選擇archetype步驟

常用的archetype

maven-archetype-quickstart

默認(rèn)的Archetype,基本內(nèi)容包括:

  • 一個(gè)包含junit依賴聲明的pom.xml
  • src/main/java主代碼目錄及一個(gè)名為App的類
  • src/test/java測(cè)試代碼目錄及一個(gè)名為AppTest的測(cè)試用例

maven-archetype-webapp

一個(gè)最簡單的Maven war項(xiàng)目模板,當(dāng)需要快速創(chuàng)建一個(gè)Web應(yīng)用的時(shí)候可以使用它。生成的項(xiàng)目內(nèi)容包括:

  • 一個(gè)packaging為war且?guī)в衘unit依賴聲明的pom.xml
  • src/main/webapp/目錄
  • src/main/webapp/index.jsp文件
  • src/main/webapp/WEB-INF/web.xml文件

Archetype開發(fā)

創(chuàng)建自定義模板

1.在maven項(xiàng)目下,執(zhí)行mvn archetype:create-from-project,在target/generated-sources/archetype目錄下生成Archetype project
2.cd target/generated-sources/archetype后,mvn install安裝archetype project到本地倉庫

ps:如果是maven多模塊項(xiàng)目,在根目錄下執(zhí)行mvn archetype:create-from-project

mvn install后,會(huì)在本地的maven倉庫,按照maven坐標(biāo)創(chuàng)建對(duì)應(yīng)的archetype文件

步驟

官方介紹:https://maven.apache.org/archetype/maven-archetype-plugin/advanced-usage.html

例子:

本地倉庫中生成的archetype模板

使用自定義模板

1.在當(dāng)前的目錄下,mvn archetype:generate -DarchetypeCatalog=local,查看本地archetype列表

2.choose number,按步驟輸入基本參數(shù)groupId/artifactId/version/package

3.在當(dāng)前目錄下,以artifactId為目錄創(chuàng)建一個(gè)新的項(xiàng)目

添加到IDEA

添加自定義屬性參數(shù)

Archetype配置

mvn archetype:generate -DarchetypeCatalog=local

對(duì)應(yīng)的本地archetype列表,在本地maven倉庫的archetype-catalog.xml中 ,比如: ~/.m2/repository/archetype-catalog.xml

IDEA中的archtype配置,在 ~/Library/Caches/IntelliJIdea2017.1/Maven/Indices/UserArchetypes.xml中

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容