IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Maven之自定义archetype生成项目骨架(构建脚手架项目) -> 正文阅读

[Java知识库]Maven之自定义archetype生成项目骨架(构建脚手架项目)

一、生成自定义archetype

创建maven项目,每次都要选择一个骨架,总有一部分东西是我们不需要的,有时候创建项目时选择了一个骨架,用的时候,需要删删减减的,解决办法就是创建一个自己的自定义骨架,每次创建maven的时候,就使用自己的骨架,相对方便多了。

archetype自定义的优势:

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

1.1、在IDEA中进行自定义archetype

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-archetype-plugin</artifactId>
    <version>3.1.1</version>
</plugin>

在这里插入图片描述
在项目根目录下新建archetype.properties模板规则文件

# 添加不需要放到模板的正则匹配
excludePatterns=.idea/**,README.md,.mvn/wrapper/*,.gitignore
# 需要替换处理的文件后缀,默认没有yml、yaml
archetype.filteredExtensions=java,yml,yaml,xml,txt,groovy,cs,mdo,aj,jsp,gsp,vm,html,xhtml,properties,.classpath,.project

在这里插入图片描述

1.2、执行maven 命令

  1. archetype:create-from-project,执行maven命令
    在这里插入图片描述
    遇到警告,警告信息:Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!
    在这里插入图片描述
    解决方法:警告信息可以不做处理。
    在这里插入图片描述
    archetype:create-from-project命令执行完之后,项目会生成target目录文件,至此,骨架相当于已经生成,但是需要安装,还需要把骨架添加到maven中。
    在这里插入图片描述
    2.选择target文件执行install命令
    在这里插入图片描述在这里插入图片描述在这里插入图片描述
[INFO] Installing D:\dev_workspace\yx-jxc-parent\target\generated-sources\archetype\target\yx-jxc-parent-archetype-1.0.0.jar to D:\maven_repository\com\deewin\yx-jxc-parent-archetype\1.0.0\yx-jxc-p
arent-archetype-1.0.0.jar
[INFO] Installing D:\dev_workspace\yx-jxc-parent\target\generated-sources\archetype\pom.xml to D:\maven_repository\com\deewin\yx-jxc-parent-archetype\1.0.0\yx-jxc-parent-archetype-1.0.0.pom
  1. 执行archetype:crawl命令,用于构建骨架,在本地仓库的根目录生成archetype-catalog.xml骨架配置文件:
    在这里插入图片描述
    在这里插入图片描述

二、使用archetype创建项目

2.1、采用maven提供的archetype生成项目

通常我们在创建一个maven项目的时候会使用idea界面窗口去创建,创建时选择一个模板即可,操作简单。
在下面的例子中,我们将在 E:\Maven 文件夹下创建一个基于 maven 的 java 应用项目。命令格式如下:

mvn archetype:generate -DgroupId=com.deewin -DartifactId=javaProjectTest -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

参数说明:

  • DgourpId: 组织名,公司网址的反写 + 项目名称
  • DartifactId: 项目名-模块名
  • DarchetypeArtifactId: 指定 ArchetypeIdmaven-archetype-quickstart,创建一个简单的 Java 应用
  • DinteractiveMode: 是否使用交互模式
    在这里插入图片描述在这里插入图片描述

2.2、采用自己构建的archetype生成项目

2.2.1、方法1:利用自动生成的 archetype-catalog.xml来创建项目

当我们install后,会在本地的maven仓库目录下生成如下定义archetype文件:
在这里插入图片描述在这里插入图片描述
我们运行如下命令

mvn archetype:generate -DarchetypeCatalog=local

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.2.2、方法2:需要将install后的achetype项目copy到插件查找目录org\apache\maven\archetypes

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-06-16 21:31:54  更:2022-06-16 21:33:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 18:31:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码