Archetype是一个Maven项目的模板工具包,它定义了一类项目的基本架构。Archetype为开发人员提供了创建Maven项目的模板,同时它也可以根据已有的Maven项目生成参数化的模板。通过archetype,开发人员可以很方便地将一类项目的最佳实现应用到自己的项目中。在一个Maven项目中,开发者可以通过archetype提供的范例快速入门并了解该项目的结构与特点。
Maven Archetype 由下面 5 个模块组成:
- maven-archetype-plugin:Archetype 插件。
- archetype-packaging:用于描述 Archetype 的生命周期与构建项目软件包。
- archetype-models:用于描述类与引用。
- archetype-common:核心类。
- archetype-testing:用于测试 Maven Archetype 的内部组件。
Archetype插件有四个目标可以直接使用
- archetype:create(不推荐):从archetype 中创建一个Maven项目。
- archetype:generate(推荐):从archetype 中创建一个Maven项目,需要开发人员在指定archetype,插件会从远程仓库中自动获取。
- archetype:create-from-project:从已有的项目中生成archetype。
- archetype:crawl:搜索并更新仓库中的archetype。
2.使用模板生成项目
2.1 开发一个模板项目
开发一个Spring Boot的模板
op-system-center: 领域开发练习
上面项目中opsource.zip下的op-archetypes是一个模板项目,可以使用它来生成项目骨架
2.2 把模板上传到案例的云效私服中
使用云效私服的步骤
- 打开云效,把setting.xml放到.m2目录下

- mvn deploy模板到私服仓库

- 在需要生成模板项目的目录下执行命令
mvn archetype:generate -DgroupId=com.only4play -DartifactId=op-test -Dversion=1.0.0-SNAPSHOT -Dpackage=com.only4play.test -DappName=test-center -DarchetypeArtifactId=op-service-archetype -DarchetypeGroupId=com.only4play -DarchetypeVersion=1.0.0-SNAPSHOT
- 命令中-Darchetypexxx表是模板的gav坐标

- 命令中-Dxxx表示要生成模块的gav坐标
- mvn archetype:generate的作用在第一点中已经介绍过
- 执行完后生成了一个新的模板
