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说明
Maven model archetype说明相关推荐
- 如何使用Maven的archetype快速生成一个新项目(解决生成项目目录不完整问题)...
Maven的archetype Plugin可能大家都听过,但不一定都能很好地用好它.缺省地如果你使用 mvn archetype:generate 会从maven的Repository里查找所有支 ...
- 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 东方不能 ...
- inspects a maven model for resolution problems
[问题]IDEA中打开一个maven项目后,pom.xml文件有一依赖的version处红线显示:...inspects a maven model for resolution problems [ ...
- 如何选择创建Maven的archetype
前言: 在使用IDEA的Maven插件创建我们的maven项目时提供了如图所示的原型,为我们快速创建合适的项目提供了很大的帮助.下面我们将详细介绍各个archetype. 官网对archetype(原 ...
- 删除Maven骨架Archetype
删除Maven骨架Archetype 文章目录 删除Maven骨架Archetype 前言 一. IDEA中删除Maven骨架Archetype删除 有些自定义的需要删除: 把骨架对应上面的两个地方的 ...
- maven model inspection
今天想要使用shiro来实现权限认证的功能.shiro是一种Java安全框架,它可以用来实现身份认证,授权,加密和会话管理. 在我搭建环境的时候,在pom.xml中添加shiro的jar包时,出现了问 ...
- 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环境下开发,因为硬盘问题,重置电脑后,安装了最新 ...
- 架构师工具箱(二)Maven——Maven生成Archetype
写在前面: 你好,欢迎关注! 我热爱技术,热爱分享,热爱生活, 我始终相信:技术是开源的,知识是共享的! 博客里面的内容大部分均为原创,是自己日常的学习记录和总结,便于自己在后面的时间里回顾,当然也是 ...
- 学习笔记:Maven的ArcheType的学习笔记
摘要: Archetype是什么?它由哪些文件组成?如何创建和安装自己的archtype,如何使用自己创建的archetype? 一.Archetype是什么 Archetype其实就是一个Maven ...
最新文章
- 业界 | 复杂出行场景下,滴滴如何将AI融入地图系统
- Docker(六):Docker 三剑客之 Docker Swarm
- [转]python新手必碰到的问题---encode与decode,中文乱码--转载
- 算法岗面试前怎样高效刷题?
- 多线程笔记补充之线程通信wait和notify方法以及Lock和Condition接口的使用
- java按键修改_修改键位映射,打造自己的个性键盘 [转自赵翔鹏的Blog]
- smartctl command's RETURN VALUES
- Discuz! X2.5 添加风格模板
- mysql实例备份和单库备份_史上最简单的MySQL数据备份与还原教程(上)(三十五)...
- 这15个Java多线程面试题及回答你确定不来看看!
- html视频自动播放循环播放,HTML5 通过Vedio标签实现视频循环播放的示例代码
- Python Web开发的完整指南
- 实验一 网络侦查与网络扫描
- 将excel表格嵌入html,excel中embed的使用
- 群体优化算法工具箱分享(GA、PSO、CS、GWO、WOA、HHO)
- 短信平台市场蒸蒸日上的根本原因
- 时空恋旅人 豆瓣影评
- Linux系统打印机打印乱码,Linux输入中文乱码问题(亲测有效)
- 如何开发微信小程序?微信小程序有哪些特点?
- Java抽象类(abstract)
热门文章
- Geoserver+Geomesa+HBase时空大数据环境搭建
- CDN服务器是什么意思?CDN服务器搭建部署
- 艾伟_转载:我对NHibernate的感受(1):对延迟加载方式的误解
- 做公关必用的四大法宝
- 链路层数据帧格式总结
- linux下创建nginx虚拟目录详解,通过Samba映射Linux磁盘作为Windows IIS的虚拟目录--梦飞翔的地方(梦翔天空)...
- 是什么软件_什么是企业微信软件
- Suricata高性能配置
- 嗅觉计算机应用,昆虫嗅觉神经的计算机三维重建 - 应用昆虫学报.pdf
- 图像形态学处理(3)