使用maven生成自己的archetype

通过maven-archetype-plugin插件可以自定义符合我们自己需求的archetype(骨架),不但可以快速完成项目的创建,而且可以复用现前搭建项目的基础设施,比如公共组件,从而提高开发效率。

archetype理解

Archetype是一个Maven项目的模板工具包,它定义了一类项目的基本架构。Archetype为开发人员提供了创建Maven项目的模板,同时它也可以根据已有的Maven项目生成参数化的模板。通过archetype,开发人员可以很方便地将一类项目的最佳实现应用到自己的项目中。在一个Maven项目中,开发者可以通过archetype提供的范例快速入门并了解该项目的结构与特点。
Archetype插件有4个目标可以使用:

  • archetype:create(不推荐):从archetype 中创建一个Maven项目。
  • archetype:generate:从archetype 中创建一个Maven项目,需要开发人员在指定archetype,插件会从远程仓库中自动获取。
  • archetype:generate:从archetype 中创建一个Maven项目,需要开发人员在指定archetype,插件会从远程仓库中自动获取。
  • archetype:crawl:搜索并更新仓库中的archetype。

archetype使用

maven提供了一些官方的archetype给开发者使用,主要如下:

  • maven-archetype-quickstart
  • maven-archetype-simple
  • maven-archetype-webapp

我们可以使用mvn archetype:generate生成特定骨架的maven项目。

//命令格式如下:
mvn archetype:generate -DarchetypeGroupId=archetype的groupId -DarchetypeArtifactId=archetype的artifactId -DarchetypeVersion=archetype的version -DgroupId=项目的groupId -DartifactId=项目的artifactId -Dversion=项目的version

//举个栗子:生成一个quick-start骨架的maven项目,artifactId为test,groupId为artifactId
mvn archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DgroupId=com.hhli -DartifactId=test -Dversion=1.0-SNAPSHOT

效果截图如下:
在这里插入图片描述

archetype自定义

前一部分讲述了如何使用maven官方自带的archetype生成特定的骨架(项目结构),那么我们是否可以自定义生成自己的项目结构呢?答案是显然的。

archetype自定义的优势:

  • 可以集成公共的开发组件,提高开发效率。
    公司内部对中间件的封装,可以集成进来;开源社区的优质轮子,可以集成进来。这样,项目可以有大量的优秀组件,避免重复造轮子。
    另外,如果需要创建新项目,可以一键生成,不必在复制一个项目,更改项目名,删减代码之类的。
  • 项目风格统一,便于统一维护。
    试想,同一个archetype生成的项目,无论是项目结构,还是项目依赖的组件,应该都是类似的。如果有新的开发同学进入项目,熟悉了某个项目,其它项目除了业务逻辑,基本上不需要理解成本。

archetype如何自定义:

  1. 手动创建一个空项目
    使用maven的maven-archetype-quickstart或者IDE的生成一个空项目,
    然后加入自己项目所依赖的组件,比如springboot,common mapper等。

  2. 根据创建的项目生成自己的archetype
    2.1 进入第一步创建项目所在的根目录,执行mvn archetype:create-from-project
    在这里插入图片描述
    2.2 执行成功后,然后进入target\generated-sources\archetype,可以发现有pom.xml
    在这里插入图片描述
    2.3 执行mvn deploy部署archetype到私服或者中央仓库注意pom.xml需要设置私服的地址和archetype的坐标信息(下一步测试需要)
    在这里插入图片描述
    2.4 使用2.3生成的archetype生成maven项目,到此结束。

mvn archetype:generate -DarchetypeGroupId=com.hhli -DarchetypeArtifactId=test-archetype -DarchetypeVersion=1.0-SNAPSHOT -DgroupId=com.yangyu -DartifactId=haha

疑问

如果有疑问,欢迎讨论。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值