[TOC]
1. 操作步骤
1.1 在模板项目下新建 archetype.properties
文件
excludePatterns=.idea/*,/**/.idea/*,/**/node_modules/**/*,readme.md,archetype.properties,*.bat,*.iml,/**/*.iml,*.ps1,pom-xml-flattened,/**/pom-xml-flattened
1.2 执行 mvn archetype:create-from-project -D archetype.properties=./archetype.properties
在项目根目录下生成 target
目录
1.3 cd 到 archetype 目录,执行如下命令
# 将模板安装到本地仓库
mvn -D maven.test.skip clean install
# 将模板上传到远程仓库
mvn deploy
1.4 从模板生成项目
参数说明
-DgroupId 需要生成项目的组id
-DartifactId 需要生成项目的名称
-Dpackage 生成项目的包名
-DarchetypeCatalog 可选local或者远程仓库
- 从本地仓库快速生成项目
mvn org.apache.maven.plugins:maven-archetype-plugin:2.4:generate \
-DgroupId=com.das \
-DartifactId=test \
-Dpackage=com.das.test \
-DarchetypeGroupId=com.das\
-DarchetypeArtifactId=demo-archetype \
-DarchetypeVersion=1.0.0-SNAPSHOT \
-DinteractiveMode=false \
-DarchetypeCatalog=local -X
- 从远程仓库快速生成项目
mvn org.apache.maven.plugins:maven-archetype-plugin:2.4:generate \
-DgroupId=com.das \
-DartifactId=test \
-Dpackage=com.das.test \
-DarchetypeGroupId=com.das\
-DarchetypeArtifactId=demo-archetype \
-DarchetypeVersion=1.0.0-SNAPSHOT \
-DinteractiveMode=false \
-DarchetypeCatalog=http://nexus3.rd.chn-das.com/repository/maven-snapshots -X
2. 注意事项
- 以上所有命令都不要通过
powershell
执行 target/generated-sources/archetype/pom.xml
需要添加远程仓库信息
<distributionManagement>
<!--maven上传配置-->
<snapshotRepository>
<id>nexus-snapshots</id>
<name>Nexus SnapShots Repository</name>
<url>${maven.url}/repository/maven-snapshots/</url>
</snapshotRepository>
<repository>
<id>nexus-release</id>
<name>Nexus Release Repository</name>
<url>${maven.url}/repository/maven-releases/</url>
</repository>
</distributionManagement>
<properties>
<maven.url>你的远程仓库地址</maven.url>
</properties>