全站最帅😎
发布于 2023-08-25 / 509 阅读
0
0

从Maven自定义模板快速创建项目

[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 目录
image.png

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>

评论