搭建archetype骨架工程

news2024/10/5 14:23:35

搭建archetype骨架工程

  • 一、archetype概念
    • 1、archetype简介
    • 2、archetype组成结构
    • 3、archetype生命周期
    • 4、archetype使用
  • 二、构建我们自定义的骨架工程
    • 1、创建一个自定义的项目
    • 2、修改pom的build插件
    • 3、生成archetype资源文件
    • 4、将生成的资源文件制作成archetype jar包
    • 5、生成archetype-catalog.xml

一、archetype概念

1、archetype简介

Archetype是一个Maven项目的模板工具包,它定义了一类项目的基本架构。开发人员通过maven-archetype-plugin插件可以很方便的生成archetype工程,将一类项目的最佳实现应用到自己的项目中。

2、archetype组成结构

archetype-packaging:用于描述archetype的生命周期与构建项目软件包
archetype-models:用于描述类与引用
archetype-common:核心类
archetype-testing:用于测试Maven Archetype的内部组件

3、archetype生命周期

在这里插入图片描述

4、archetype使用

archetype:create(不推荐):从archetype 中创建一个Maven项目。

archetype:generate:从archetype 中创建一个Maven项目,需要开发人员在指定archetype,插件会从远程仓库中自动获取。

archetype:create-from-project:从已有的项目中生成archetype。

archetype:crawl:搜索并更新仓库中的archetype。

二、构建我们自定义的骨架工程

1、创建一个自定义的项目

这是我的骨架工程项目结构
在这里插入图片描述

2、修改pom的build插件

需要的编译的插件有:

  1. maven-archetype-plugin
  2. maven-compiler-plugin
  3. maven-resources-plugin
    在这里插入图片描述

3、生成archetype资源文件

需要删除项目下不相关的所有文件,然后在项目的目录下执行mvn archetype:create-from-project命令

mvn archetype:create-from-project

如图不相关的文件会被打包进资源文件中
在这里插入图片描述

4、将生成的资源文件制作成archetype jar包

进入target/generated-sources/archetype文件夹,执行mvn clean install 命令

mvn clean install 

会在与src平级目录生成一个target文件夹,文件夹中可以看出archetype jar包已经生成成功
在这里插入图片描述

5、生成archetype-catalog.xml

进入本地maven仓库找到刚刚生成的jar包的位置,如图所示
在这里插入图片描述
执行mvn archetype:crawl命令生成archetype-catalog.xml

mvn archetype:crawl

执行成功后进入本地仓库位置,可以看到文件已经生成

在这里插入图片描述
在这里插入图片描述
就可以根据这个添加我们自定义的archetype了
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/748760.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java中不同变量声明类型

今天在学习分层解耦-三层架构的过程中,具体文章参照:写文章-CSDN创作中心 在Servie层创建Dao对象时,以及在Controller层创建Service对象时,发现与我之前了解的声明变量的方法不一样。具体关键代码如下: 其中EmpServic…

简要介绍 | 边缘计算:原理,研究现状与未来展望

注1:本文系“简要介绍”系列之一,仅从概念上对边缘计算进行非常简要的介绍,不适合用于深入和详细的了解。 边缘计算:原理,研究现状与未来展望 What is Edge Computing? | Moving Intelligence to the Edge 一、背景介…

小平板 大智慧-嵌入式方案满足教育市场多元需求

线上教育观念的深入和技术的更新,直接拉动了教育类硬件及相关终端设备的市场需求。 产品框图 IDO-SBC3566采用瑞芯微RK3566, CPU采用4核A55架构处理器,集成G52图形处理器,内置独立NPU,算力高达1Tops,可满足…

如何在 Windows 中免费合并 PDF 文件 [在线和离线]

PDF是一种广泛使用的文件格式,具有兼容性好、安全性高、易于打印、方便浏览等众多优点。在工作和学习过程中,经常需要将同一类型的PDF文件合并起来,以方便传输和查看,使得合并PDF文件成为一种重要的数据整合方法。 如果您想知道如…

Es存储和查询

基本概念 Cluster 集群,一个ES集群是由多个节点(Node)组成的,每个集群都有一个cluster name 作为标识, 在同一网段下的Es实例会通过cluster name 决定加入哪个集群下。 node 节点,一个ES实例就是一个node,一个机器可以…

电气控制与PLC之间的本质区别是什么?

电气控制和PLC(可编程逻辑控制器)之间的最实质的区别是它们的实现方式和应用范围。 我这里刚好有嵌入式、单片机、plc的资料需要可以私我或在评论区扣个6 实现方式: 电气控制:电气控制是通过使用电气元件(如继电器、…

数据库多表连接查询练习

数据库多表连接查询练习 一、创建数据库dept、emp 二、插入数据 1.找出销售部门中年纪最大的员工的姓名 mysql> select name,age from emp inner join dept on dept.dept1emp.dept2 where dept_name销售 order by age desc limit 1;2.求财务部门最低工资的员工姓名…

探索AI大模型:现状、挑战与未来

导言: 近年来,AI大模型如GPT(生成对抗网络)在自然语言处理领域崭露头角,引发广泛关注和讨论。这些模型能够生成各种类型的文本内容,展现出惊人的语言处理能力。然而,AI大模型的发展也面临着挑战…

Perl web - Mojolicious 小记

文章目录 关于 Mojolicious安装 关于 Mojolicious Mojolicious是Perl语言比较流行的异步Web开发框架。 官网:https://mojolicious.orggithub : https://github.com/mojolicious/mojo示例:https://github.com/mojolicious/mojo/tree/main/examples 相关…

【雕爷学编程】Arduino动手做(138)---64位WS2812点阵屏模块8

37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的&am…

移动端 滚动穿透

文章目录 滚动穿透弹窗内容滚动到底部后带动底层页面滚动在弹窗出现时可以直接通过页面滚动条滚动 禁用底层页面滚动弹出层将覆盖整个视口禁用触摸事件监听弹出层滚动位置阻止弹出层的滚动事件冒泡 滚动穿透 当一个固定定位(fixed)或绝对定位&#xff0…

Windows10 网页版 上线!最具扩展性的webos

模仿Windows10 UI 框架 Vue3 点击进入github 链接: https://github.com/royalknight56/win10-vue3 本框架可以让你的页面像win10视窗系统一样,运行一个网页上的win10系统。 本框架可能是最具扩展性的webos 本框架相较于其他的特点是, 具有文件系统&am…

第二章:类与对象(上)

系列文章目录 文章目录 系列文章目录前言面向过程和面向对象初步认识类的引入类的定义类的两种定义方式成员变量命名规则的建议 类的访问限定符及封装访问限定符面试题 封装面试题 类的作用域类的实例化类对象模型如何计算类对象的大小类对象的存储方式猜测对象中包含类的各个成…

C语言字节序

C语言字节序分为大端序和小端序。 大端序: 高字节先存储,也就是数据的高字节存储在低地址中。 小端序: 低字节先存储,也就是数据的低字节存储在低地址中。 例如: short a 01234; char *p &a; printf(&qu…

基于Java+SpringBoot制作一个社区宠物登记小程序

制作一个社区宠物登记小程序,帮助社区居民登记和管理他们的宠物信息,以便更好地跟踪和维护社区中的宠物状况,通过社区宠物信息登记系统,社区居民可以更好地管理自己的宠物信息,并与其他宠物所有者共享资源和信息。这将有助于提高社区宠物的福利和安全,促进社区成员之间的…

业务流程管理系统是什么?企业业务流程有哪些?

随着企业规模的不断扩大和竞争的日益激烈,业务流程管理系统的重要性也越来越明显。通过对业务流程的全面管理和优化,企业可以提高工作效率、降低流程成本、优化流程质量,从而在市场竞争中获得更大的优势。 阅读本文您将了解: 一、…

【实战项目】c++实现基于reactor的高并发服务器

基于Reactor的高并发服务器,分为反应堆模型,多线程,I/O模型,服务器,Http请求和响应五部分 全局 反应堆模型 Channel 描述了文件描述符以及读写事件,以及对应的读写销毁回调函数,对应存储arg读…

查看某个三方依赖jar包是在哪个pom引入的(springboot+idea)

项目springboot1升级2版本,日志框架使用的是log4j,升级到springboot2版本某些依赖引入了logback依赖包,然后项目启动报错: 查看这个SLF4JLoggerContextFactory这个类是在哪个jar包下 使用idea的maven依赖图查看功能寻找是哪个p…

代码随想录打卡

这里写目录标题 1.数组部分1.1二分查找1.2移除元素1.3 有序数组的平方1.4长度最小的子数组1.5螺旋矩阵II 2. 链表部分2.1移除链表元素2.2设计链表2.3反转链表2.4两两交换相邻的节点2.5删除链表的倒数第n个节点 1.数组部分 1.1二分查找 class Solution {public int search(int[…

能耗感知虚拟光网络映射论文分析

1、M. Zhu, P. Gao, J. Zhang, X. Zeng, and S. Zhang, “Energy efficient dynamic virtual optical network embedding in sliceable-transponder-equipped eons,” in GLOBECOM 2017 - 2017 IEEE Global Communications Conference, 2017, pp. 1–6. 特点是:1&a…