(转)Maven之自定义archetype生成项目骨架
背景:最近在開發一個項目的基礎構件,在以后項目的開發過程中可以直接使用該構件快速的生成項目骨架進行開發。
?
摘要:使用過Maven的人都知道maven中有許多功能都是通過插件來提供的,今天我們來說一下其中的一個插件:maven-archetype-plugin
,通過該插件可以自定義符合我們自己需求的archetype。
?
一:什么是Archetype
總之,原型是一個Maven項目模板工具包,也就是一個模板工程。
二:使用archetype創建項目
mvn archetype:generate上面的命令執行后會輸出很多maven官方提供的archetype,但是這些archetype生成的項目骨架都不能夠滿足我們的需求,所以這就需要我們自己開發一個archetype來滿足我們自己的開發需求,下面我把我自己自定義這個archetype的過程記錄一下方便日后回憶。
?
三:創建自定義的archetype項目
1.首先使用sts(spring的一款開發工具,下載地址到spring官網)創建一個maven project,然后把配置好的一些公用的東西放到相應的目錄下面比如說會將一些常用的java代碼存放到src/main/java目錄下面;會將一些通用的配置文件放到src/main/resources目錄下面;如果是javeEE工程,還會有一些jsp等等的文件存放到src/main/webapp目錄下面,如下圖所示:
?
2.然后在創建的maven project的pom.xml文件中添加archetype插件,如下面所示:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.micaicms</groupId> <artifactId>micaicms-pom</artifactId> <version>1.0</version> </parent> <artifactId>micaicms-web-archetype</artifactId> <packaging>jar</packaging> <name>micaicms web archetype</name> <description>micaicms-web-archetype</description> <distributionManagement> <repository> <id>releases</id> <name>Micaicms Releases</name> <url>http://127.0.0.1:8081/nexus/content/repositories/releases/</url> </repository> <snapshotRepository> <id>snapshots</id> <name>Micaicms Releases</name> <url>http://127.0.0.1:8081/nexus/content/repositories/snapshots/</url> </snapshotRepository> </distributionManagement> <build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-archetype-plugin</artifactId> <version>2.2</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.5</source> <target>1.5</target> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <configuration> <encoding>UTF-8</encoding> </configuration> </plugin> </plugins> </pluginManagement> </build> </project>3.運行你自己配置好的自定義的archetype項目
先執行
mvn clean install安裝該archetype項目到你的本地倉庫
發布該archetype項目到你的本地私服(nexus)
ps:這里如果你需要發布這個archetype到你的本地私服上去,那么需要在maven里面配置權限,主要是maven里面的settings.xml文件,我
的settings.xml文件配置如下,配置好以后就可以執行發布命令了
再執行
mvn deploy?
4.查看你剛才發布到nexus私服上去的archetype,如下圖:
?
?
四:在eclipse/sts開發工具中配置你發布到私服上的自定義的archetype
1.打開你的開發工具,eclipse或者sts,我這里是sts
2.選擇Window->Preferences->Maven->Archetypes
3.點擊Add Remote Catalog,輸入你的nexus私服中archetype的地址,我這里是
http://127.0.0.1:8081/nexus/content/groups/public/archetype-catalog.xml
輸入Description,隨便輸入都可以,我這里是micaicms-web-archetype
4.點擊Ok,點擊Apply
5.重新啟動你的開發工具eclipse或者sts
?
五:使用自定義的archetype生成自定義的項目骨架
1.選擇New->Maven Project->Next
2.選擇你配置好的archetype,如下圖:
?
3.輸入對應的groupId,artifactId,package,如下圖:
因為我已經新建過該項目了,所以我這里不能點擊Finish,你們的應該可以
?
4.最后生成的項目骨架如下圖:
?
5.修改數據庫配置文件,導入初始化sql腳本,如下圖:
?
6.部署項目到tomcat下面訪問即可,默認的訪問路徑為:ht:tp://localhost:8080/micaicms-ssmb/project/list
?
六:Maven的自定義archetype源碼工程下載地址:
https://github.com/sxdtzhaoxinguo/micaicms-web-archetype
?
七:Maven的自定義archetype生成的基礎項目骨架工程的下載地址:
https://github.com/sxdtzhaoxinguo/micaicms-ssmb
?
轉載于:https://www.cnblogs.com/lixuwu/p/8064739.html
總結
以上是生活随笔為你收集整理的(转)Maven之自定义archetype生成项目骨架的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: npm 常用指令
- 下一篇: HttpClient-01基本概念