首页 » 99链接平台 » Maven Archetype 秘籍:轻松打造项目模板(项目模板根目录秘籍闪念)

Maven Archetype 秘籍:轻松打造项目模板(项目模板根目录秘籍闪念)

雨夜梧桐 2024-10-23 04:00:05 0

扫一扫用手机浏览

文章目录 [+]

Maven Archetype 作为一种项目模板工具,能够让我们轻松定义项目的基础结构,包括必要的依赖、配置文件模板乃至特定的代码片段,从而实现新项目的标准初始化。
这不仅极大地简化了项目创建的流程,减少了重复劳动,还确保了项目的一致性和规范性,让开发者能够更专注于核心业务逻辑的实现。

什么是 Maven Archetype

Maven Archetype 是 Maven 项目中的一种模板机制,它可以根据已有项目生成一个模板项目,为我们快速创建一个 Maven 项目的骨架结构,包括目录、文件和配置等。
这样,我们就可以基于这个标准化的项目结构快速启动新项目,而无需从头开始编写所有内容。

如何自定义 Archetype将 Maven 的 settings.xml 复制一份到.m2 目录下。
进入项目根目录,执行 maven 命令:

mvn archetype:create-from-project

执行成功后,项目根目录下会生成 target 文件夹。

Maven Archetype 秘籍:轻松打造项目模板(项目模板根目录秘籍闪念) 99链接平台
(图片来自网络侵删)

删除项目根目录下 target 目录下的无用文件夹(如.idea、test、target 等)。
将 target\generated-sources\archetype 复制一份到任意位置(防止被意外 mvn clean)。
打开复制出来的项目,修改父 pom。
添加缺失的 module 信息

<modules> <module>${rootArtifactId}-adapter</module> <module>${rootArtifactId}-app</module> <module>${rootArtifactId}-client</module> <module>${rootArtifactId}-common</module> <module>${rootArtifactId}-domain</module> <module>${rootArtifactId}-infrastructure</module> <module>${rootArtifactId}-start</module></modules>

修改 dependencyManagement 下依赖引用的各个 module,改为如下格式:

<dependency> <groupId>${groupId}</groupId> <artifactId>${rootArtifactId}-adapter</artifactId> <version>${project.version}</version></dependency>如何使用 Archetype在修改完成之后的 archetype 项目根目录下,执行 maven 命令:

mvn install

执行成功后,.m2\repository 目录下会生成 archetype-catalog.xml 文件。

将此文件添加到 IDEA 的 archetype catalogs 中

新建项目时,选择刚刚的 Catalog 和 Archetype,填写项目信息后直接创建即可。

如何共享 Archetype在修改完成之后的 Archetype 项目根目录下,执行 maven 命令:

mvn deploy将archetype-catalog.xml上传至 oss,得到一个 url。
团队其他成员可将此 url 添加到 IDEA 的 archetype catalogs 中,其余使用 Archetype 步骤同上。
总结

Maven Archetype 是一个强大的工具,它可以帮助我们快速创建项目的骨架结构,节省了繁琐的配置和初始化工作。
通过自定义 Archetype,我们可以根据项目需求定制模板,提高开发效率。
使用 Archetype 时,只需在 IDEA 中添加相应的 Catalog 和 Archetype,填写项目信息即可快速创建项目。
希望本文能帮助你更好地了解和使用Maven Archetype。

参考资料https://maven.apache.org/archetype/index.htmlhttps://baeldung-cn.com/maven-archetype

作者:当贝技术团队

来源-微信公众号:当贝技术团队

出处:https://mp.weixin.qq.com/s/516n2bPvZd1NZh6juSS92A

相关文章

详细介绍VC语言符号,探索编程之美

在计算机编程的世界里,符号扮演着至关重要的角色。而VC语言,作为C++语言的一种变体,其符号的使用更是独具特色。本文将深入解析VC...

99链接平台 2025-01-01 阅读0 评论0

语言统计分析,提示语言使用的奥秘与趋势

语言是人类沟通的桥梁,承载着丰富的文化内涵。随着信息技术的飞速发展,语言统计分析成为研究语言现象的重要手段。本文将通过对大量语言数...

99链接平台 2025-01-01 阅读0 评论0

详细介绍与信通信协议,技术革新与未来展望

随着信息技术的飞速发展,通信协议作为信息传输的核心技术,逐渐成为各行各业关注的焦点。其中,与信通信协议因其高效、安全、可靠的特点,...

99链接平台 2025-01-01 阅读0 评论0

苹果CMS,引领内容管理革命的创新平台

随着互联网的飞速发展,内容管理已经成为企业、机构和个人必备的技能。在这个信息爆炸的时代,如何高效地管理和发布内容,已经成为衡量一个...

99链接平台 2025-01-01 阅读1 评论0

IT军事应用,科技强军的新引擎

随着信息技术的飞速发展,信息技术在军事领域的应用日益广泛,成为科技强军的新引擎。信息技术在军事领域的应用,不仅提高了军队的战斗力,...

99链接平台 2025-01-01 阅读1 评论0