以webapp模板項目為例,使用的IDE為IDEA 2019
1.創建webapp模板項目,結構如下圖
共性配置文件如applicationContext-dao.xml、applicationContext-service.xml、spring-mvc.xml、applicationContext-trans.xml、log4j.xml等可以自己額外添加到resources目錄下,作為模板
2.修改pom文件,加入如下內容:
<build> <finalName>yyj-archetype-webapp</finalName> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-archetype-plugin</artifactId> <version>3.1.2</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <configuration> <encoding>UTF-8</encoding> <includeEmptyDirs>true</includeEmptyDirs> </configuration> </plugin> </plugins> </pluginManagement> </build>
3.項目根目錄(pom.xml)所在目錄)執行maven命令:mvn archetype:create-from-project
執行成功如下圖:
注意沒有使用IDE自帶的Maven,可能報:[ERROR] The specified user settings file does not exist: C:\Users\cchengyyj\.m2\settings.xml
解決辦法:將獨立的安裝maven的setting.xml文件拷貝到C:\Users\**\.m2目錄下即可
4.target生成后的目錄結構
5.修改archetype-metadata.xml、pom.xml
5.1 archetype-metadata.xml配置文件告訴archetype插件,archetype-resources里面哪些文件需要包含到創建出的項目里
<?xml version="1.0" encoding="UTF-8"?> <archetype-descriptor xsi:schemaLocation="https://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.1.0 http://maven.apache.org/xsd/archetype-descriptor-1.1.0.xsd" name="yyj-archetype-webapp" xmlns="https://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <fileSets> <fileSet filtered="true" encoding="UTF-8"> <directory>src/main/java</directory> <includes> <include>**/*.**</include> </includes> </fileSet> <fileSet filtered="true" encoding="UTF-8"> <directory>src/main/resources</directory> <includes> <include>**/*.**</include> </includes> </fileSet> <fileSet filtered="true" encoding="UTF-8"> <directory>src/test/java</directory> <includes> <include>**/*.**</include> </includes> </fileSet> <fileSet filtered="true" encoding="UTF-8"> <directory>src/main/webapp</directory> <includes> <include>**/*.**</include> </includes> </fileSet> <fileSet filtered="true" encoding="UTF-8"> <directory>src/main/webapp/WEB-INF/lib</directory> <includes> <include>**/*.**</include> </includes> </fileSet> <fileSet encoding="UTF-8"> <directory></directory> <includes> <include>yyj-archetype-webapp.iml</include> </includes> </fileSet> </fileSets> </archetype-descriptor>
5.2 pom.xml文件自己生成的<artifactId>和<name>元素值,不滿意,根據自己喜好更改,也可以不改;<packaging>maven-archetype</packaging>修改為<packaging>jar</packaging>
6.將骨架部署到本地maven倉庫
generated-sourced/archetype目錄下運行maven命令:mvn clean install
7.執行maven命令:mvn archetype:crawl(在指定的Maven庫中查找可以的模板,並更新模板目錄),會在maven倉庫的根目錄生成archetype-catalog.xml,里面有骨架的坐標信息
能找到剛剛創建的骨架坐標信息,如下:
8.使用骨架
生成的目錄結構如下: