Maven model archetype说明

前言

新建一个model,其中有一个选项“Create from archetype”感觉很奇怪,我就来了解一下这些内容,做一下笔记,

什么是Archetype

Archetype翻译过来就是:骨架,项目工程骨架。
Archetype是Maven工程的模板工具包。一个Archetype定义了要做的相同类型事情的初始样式或模型。这个名称给我们提供来了一个一致的生成Maven工程的方式。Archetype会帮助作者给用户创建Maven工程模板,并给用户提供生成相关工程模板版本的参数化方法。有点抽象,再简单一点:项目文件框架,就是可以根据不同的Archetype有不同的目录,比如基本的main、test目录,main目录下面还会有java、resources目录等等,不同的Archetype 还有会一些.xml文件,这些都是规整好的,有点像模板,
  • 优点:使用Archetype提供的好的方法,是开发者能够使用最佳实践来快速的构建和组织一致化的工程。在Maven工程中,我们努力使用Archetype来尽可能快的给用户提供示例工程,同时也会把Maven的最佳实践介绍给新的用户。一个新的用户可以使用工作中的Maven工作作为跳板来研究更过的Maven中功能。我们也可以使用Archetype的添加机制,这样就意味着允许我们抓取Archetype中项目片段,并把它们添加到既存的工程中。Maven网站的Archetype就是很好的例子。例如,你可以使用“quick start archetype”来生成一个工程,然后就可以通过其中既存的“site archetype”来快速的创建一个网址工程。你能够使用Archetype来做很多这样的事情。

在你的团队中可能想要标准化的J2EE开发,这需要你提供EJBs、或者是WARs、或者是Web services的原型。一旦在你团队资源库中创建和部署这些原型,它们就可以在你团队内共享使用。

有那些Archetype

有很多Archetype,如图所示:

但是基本上我们使用的就三个:

  • cocoon-22-archetype-webapp
  • maven-archetype-quickstart
  • maven-archetype-webapp

我们首先看下不选择archetype生成的model是怎么样的?如下图所示:

当然,如果你不需要test、resources,你也可以手动删掉。

cocoon-22-archetype-webapp

个人用的比较少,

maven-archetype-quickstart

创建一个 maven-archetype-quickstart 的model,如图所示:

对,你没看错,啥都没有,就一个pom.xml文件,比不选择archetype都简单,截图是我手动新建的model,很奇怪为啥越来越少,也不知道是我IDEA的问题还是怎么样?这个比较适合不提供web页面的模块,比如提供对dubbo service的封装model,或者common模块,用于内部。

maven-archetype-webapp

这比较像一个web服务,实际操作后如下所示:

maven提供的41个骨架原型,这里就不一一列举了。感兴趣大家可以自己建一个测试工程看看。

参考博客

Maven的Archetype简介
Maven 三种archetype说明

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值