创建并使用Maven Archetype 工程模板(上传私有服务器)
- maven 版本 : 3.6.1
- maven私有服务器 : 阿里云效私有仓库
一 、创建 Archetype 项目模板并上传私有仓库
这里仅介绍使用插件进行模板创建的方式
第一步:进入项目目录
进入项目的pom.xml 文件夹,如果构建多模块就进入父模块的文件夹下
第二步:使用 maven-archetype-plugin 插件
配置如下
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-archetype-plugin</artifactId>
<version>2.2</version>
</plugin>
第三步:生成 archetype 模板项目
命令如下
mvn archetype:create-from-project
如图所示:
命令执行完毕后会在 target\generated-sources\archetype 生成如下文件
第四步:安装模板到本地
命令如下:
mvn install
第五步:上传到私有云
命令如下:
mvn deploy
上传到私有云需要首先在maven的配置文件(setting.xml)中对私有仓库进行配置,具体配置见:
https://blog.csdn.net/qq_26462567/article/details/100098735
上传时需要声明上传仓库的信息 配置到 project标签下,配置如下
<distributionManagement>
<repository>
<id>rdc-releases</id>
<url>https://repo.rdc.aliyun.com/repository/102990-release-poeJlq/</url>
</repository>
<snapshotRepository>
<id>rdc-snapshots</id>
<url>https://repo.rdc.aliyun.com/repository/102990-snapshot-3lk38G/</url>
</snapshotRepository>
</distributionManagement>
以上配置内容仅供参考,具体地址请按照自己具体情况配置
Archetype 项目模板
使用本地仓库的方式这里不做介绍
第一种方式:使用Idea的可视化窗体(推荐)
使用Idea 进行maven 模板构建之前请确保:
- idea已经配置了maven
- idea配置的maven选用的setting.xml 文件已经对私有仓库进行了相应配置(具体配置请参考:博客)
- maven 本地配置正常并且在3.0以上
第一步:file – > new --> project
如图所示
选项名 | 介绍 |
---|---|
GroupId | Archetypal模板的GroupId |
ArtifactId | Archetypal模板的ArtifactId |
Version | Archetypal模板的Version |
Repository | 仓库ID,如果仅配置了一个私有仓库,这里不用填 |
如下图所示
点击OK后 模块会更新到后面的列表中如下图所示:
第二步:填写需要生成项目基础信息
如下图所示:
第三步:选择项目的maven配置
如下图所示:
选择的maven 请确保已经对私有仓库进行相应配置
第四步:选择项目目录
如下图所示:
点击 finish 便可以生成模板,生成结果如下:
第二种方式:使用Maven命令行
使用之前请确保:
- maven的setting.xml 文件已经对私有仓库进行了相应配置(具体配置请参考:博客)
- maven 本地配置正常并且在3.0以上
命令如下:
mvn archetype:generate -DgroupId=com.free -DartifactId=demo-t -Dversion=1.0.0 -Dpackage=com.free.demo -DarchetypeGroupId=com.kgo -DarchetypeArtifactId=cloud-client4-archetype -DarchetypeVersion=1.0.0 -DinteractiveMode=false
格式化后:
mvn archetype:generate
-DgroupId=com.free
-DartifactId=demo-t
-Dversion=1.0.0
-Dpackage=com.free.demo
-DarchetypeGroupId=com.kgo
-DarchetypeArtifactId=cloud-client4-archetype
-DarchetypeVersion=1.0.0
-DinteractiveMode=false
命令参数 | 介绍 |
---|---|
DgroupId | 所需生成项目的groupId |
DartifactId | 所需生成项目的artifactId |
Dversion | 所需生成项目的version |
Dpackage | 所需生成项目的包名 |
DarchetypeGroupId | Archetypal模板的groupId |
DarchetypeArtifactId | Archetypal模板的artifactId |
DarchetypeVersion | Archetypal模板的version |
参数之间有一个空格
setting文件里面已经配置了私有仓库的信息,命令中不需要再次声明