前言

新建一个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说明

Maven model archetype说明相关推荐

  1. 如何使用Maven的archetype快速生成一个新项目(解决生成项目目录不完整问题)...

    Maven的archetype Plugin可能大家都听过,但不一定都能很好地用好它.缺省地如果你使用 mvn archetype:generate  会从maven的Repository里查找所有支 ...

  2. IDEA导入Maven项目,pom.xml文件中 有inspects a maven model for resolution problems报错 !!!!!!!!!!有用

    IDEA导入Maven项目,pom.xml文件中 有inspects a maven model for resolution problems报错 2018年08月06日 22:13:09 东方不能 ...

  3. inspects a maven model for resolution problems

    [问题]IDEA中打开一个maven项目后,pom.xml文件有一依赖的version处红线显示:...inspects a maven model for resolution problems [ ...

  4. 如何选择创建Maven的archetype

    前言: 在使用IDEA的Maven插件创建我们的maven项目时提供了如图所示的原型,为我们快速创建合适的项目提供了很大的帮助.下面我们将详细介绍各个archetype. 官网对archetype(原 ...

  5. 删除Maven骨架Archetype

    删除Maven骨架Archetype 文章目录 删除Maven骨架Archetype 前言 一. IDEA中删除Maven骨架Archetype删除 有些自定义的需要删除: 把骨架对应上面的两个地方的 ...

  6. maven model inspection

    今天想要使用shiro来实现权限认证的功能.shiro是一种Java安全框架,它可以用来实现身份认证,授权,加密和会话管理. 在我搭建环境的时候,在pom.xml中添加shiro的jar包时,出现了问 ...

  7. idea导入项目问题:No implementation for org.apache.maven.model.path.PathTranslator was bound.

    环境 Windows10 jdk1.8 IDEA 2018.3.2 maven3.6.3 问题描述 原本在maven3.3.9和idea2018.3.2环境下开发,因为硬盘问题,重置电脑后,安装了最新 ...

  8. 架构师工具箱(二)Maven——Maven生成Archetype

    写在前面: 你好,欢迎关注! 我热爱技术,热爱分享,热爱生活, 我始终相信:技术是开源的,知识是共享的! 博客里面的内容大部分均为原创,是自己日常的学习记录和总结,便于自己在后面的时间里回顾,当然也是 ...

  9. 学习笔记:Maven的ArcheType的学习笔记

    摘要: Archetype是什么?它由哪些文件组成?如何创建和安装自己的archtype,如何使用自己创建的archetype? 一.Archetype是什么 Archetype其实就是一个Maven ...

最新文章

  1. 业界 | 复杂出行场景下,滴滴如何将AI融入地图系统
  2. Docker(六):Docker 三剑客之 Docker Swarm
  3. [转]python新手必碰到的问题---encode与decode,中文乱码--转载
  4. 算法岗面试前怎样高效刷题?
  5. 多线程笔记补充之线程通信wait和notify方法以及Lock和Condition接口的使用
  6. java按键修改_修改键位映射,打造自己的个性键盘 [转自赵翔鹏的Blog]
  7. smartctl command's RETURN VALUES
  8. Discuz! X2.5 添加风格模板
  9. mysql实例备份和单库备份_史上最简单的MySQL数据备份与还原教程(上)(三十五)...
  10. 这15个Java多线程面试题及回答你确定不来看看!
  11. html视频自动播放循环播放,HTML5 通过Vedio标签实现视频循环播放的示例代码
  12. Python Web开发的完整指南
  13. 实验一 网络侦查与网络扫描
  14. 将excel表格嵌入html,excel中embed的使用
  15. 群体优化算法工具箱分享(GA、PSO、CS、GWO、WOA、HHO)
  16. 短信平台市场蒸蒸日上的根本原因
  17. 时空恋旅人 豆瓣影评
  18. Linux系统打印机打印乱码,Linux输入中文乱码问题(亲测有效)
  19. 如何开发微信小程序?微信小程序有哪些特点?
  20. Java抽象类(abstract)

热门文章

  1. Geoserver+Geomesa+HBase时空大数据环境搭建
  2. CDN服务器是什么意思?CDN服务器搭建部署
  3. 艾伟_转载:我对NHibernate的感受(1):对延迟加载方式的误解
  4. 做公关必用的四大法宝
  5. 链路层数据帧格式总结
  6. linux下创建nginx虚拟目录详解,通过Samba映射Linux磁盘作为Windows IIS的虚拟目录--梦飞翔的地方(梦翔天空)...
  7. 是什么软件_什么是企业微信软件
  8. Suricata高性能配置
  9. 嗅觉计算机应用,昆虫嗅觉神经的计算机三维重建 - 应用昆虫学报.pdf
  10. 图像形态学处理(3)