如何快速构建团队SpringBoot脚手架

背景

随着公司业务迅速发展,团队人员也逐渐壮大,我们需要一种方式去规范大家的工程结构以及代码依赖pom,更需要一种模板工具可以快速搭建项目的能力,来减少研发人员在项目搭建上所消耗的时间成本。

搭建统一的模板工程收益:

  • 统一项目研发框架,避免研发依赖版本不一致的问题。
  • 提升研发效率,减少项目搭建消耗的时间。

Maven Archetype

Archetype 是 Maven 的工程模板,使用 Archetype 可以快速创建一个统一的工程,提高研发效率。

Maven自带的 Archetype 在很多时候不能满足我们的需求,通常每家公司都会根据自身的选型再定制 Archetype。

搭建一个 自定义 Archetype 主要分为以下三个步骤:

  1. 基础工程整理(spring-boot-original):整理工程依赖、定义包结构,生成 Archetype 模板工程。
  2. 自定义Archetype(spring-boot-archetype):根据 1 生成的 模板工程,进行自定义参数配置,发布至仓库。
  3. 创建目标工程(spring-boot-target):根据仓库自定义 Archetype 即可生成对应的目标工程项目。

基础工程整理(spring-boot-original)

根据公司业务常用的功能规范依赖的版本,以此为基础。依赖整理举例:

archetype-pom

在 spring-boot-original 根目录直接命令,生成 Archetype 项目:

mvn clean archetype:create-from-project -Dmaven.test.skip=true

# 上面命令执行时如果报错,指定maven配置文件,配置文件路径改成自己的
mvn clean archetype:create-from-project --settings ./settings.xml -Dmaven.test.skip=true

在 target\generated-sources\archetype 目录会生成 Archetype 的相关内容,把这个目录下的内容复制出来,放到一个新目录 spring-boot-archetype 里,这样就形成了一个新的模板工程。

自定义Archetype(spring-boot-archetype)

spring-boot-archetype 项目里可以自定义模板变量。

archetype-2

在 spring-boot-archetype 根目录下执行,发布 Archetype 到本地仓库,在公司发现可以发布至公共仓库。

#本地仓库
mvn clean install
#公共仓库
mvn clean deploy

创建目标工程(spring-boot-target)、

使用Maven 命令创建

mvn archetype:generate -DinteractiveMode=false -DarchetypeGroupId=org.example -DarchetypeArtifactId=spring-boot-archetype -DarchetypeVersion=1.0-SNAPSHOT 
-DgroupId=com.company 
-DartifactId=spring-boot-target 
-Dversion=1.0-SNAPSHOT

使用IDEA创建(推荐)

archetype-target

0%