写在前面

关于Maven Archetype是什么,可以怎么用,这里不做太多解释了,就是新建Maven项目时,可以基于一些Archetype(骨架),初始化项目时,集成相关的插件或者别的技术实现,便于项目的快速搭建,除了Apache maven提供的很多骨架外,我们还可以自定义Archetype,实现具体的项目结构目录相关技术的集成搭建等等

一、如何自定义 maven Archetype

首先,要基于maven可打包的项目,或者Maven仓库已存在的包

	<groupId>com.example</groupId>
      <artifactId>aliCloud-archetype</artifactId>
      <version>1.0.0</version>
      <description>Demo project for Spring Boot</description>

通过类似这个东西,是能在本地或者远程库找到相关的资源的

二、基于本地Maven项目,构建骨架

2.1、首先确保,你手上的项目是能正常打包的,Jar,War,或者Pom等

2.2、mvn archetype:create-from-project

进入项目根目录文件下,pom的上级文件夹下,执行

mvn archetype:create-from-project

2.3、mvn install

接着,

cd target/generated-sources/archetype

执行

mvn install

2.4、测试使用

IDEA引入,新建Maven工程

即可基于我们之前的模板,生成新的项目。

三、思考,更多使用场景

这个简单而强大的功能,并没有多少人再用,可能是每个骨架都是完整的项目结构,很多时候,我们需要的只是在原有项目的基础之上,集成/引进别的新的技术实现,这个集成细粒度更小,确实Spring集成了很多,包括可以自定义的Bean注入,用来实现新技术的集成。

3.1、场景一,合并Github上Repo存储库,会更方便些

3.2、对于定制化的项目实现,可能基于骨架构建会更方便些

3.3、springboot与jsp,vue + tomcat等前端技术的集成,很有必要的