SpringCloud微服务实战——搭建企业级开发框架(三):创建Maven工程

简介: 在新建工程前,先了解一下什么是敏捷开发“松结对编程”及“L型代码结构”这里有详细的介绍和说明 : 敏捷开发“松结对编程”系列之十一:L型代码结构(团队篇之一)    使用Maven创建项目之前,我们要对工程有一个大概的规划,为了保持类库统一管理,引入的jar包版本不冲突,我们需要用到Maven的BOM功能以及Spring IO platform推出的BOM功能:

在新建工程前,先了解一下什么是敏捷开发“松结对编程”及“L型代码结构”这里有详细的介绍和说明 : 敏捷开发“松结对编程”系列之十一:L型代码结构(团队篇之一)


    使用Maven创建项目之前,我们要对工程有一个大概的规划,为了保持类库统一管理,引入的jar包版本不冲突,我们需要用到Maven的BOM功能以及Spring IO platform推出的BOM功能:


  • Maven BOM定义一整套相互兼容的jar包版本集合,使用时只需要依赖该BOM文件,即可放心地使用需要的依赖jar包,且无需再指定版本号。


  • Spring IO Platform只是一个pom文件,记录了spring与其他开源项目对应的版本,不同模块或者与外部进行集成时,只要项目中引入了它,外部集成时依赖关系无需版本号。


    Spring IO Platform在引入SpringBoot时已自动引入,不需要在我们的pom文件中导入,我们需要按照Maven提供的BOM功能定义自己基础组件依赖工程,所以我们的SpringCloud开发框架分为两个工程:一个是底层组件GitEgg-Platform,用于统一规划管理类库版本及底层基础功能组件开发;一个是GitEgg-Cloud,依赖于底层组件GitEgg-Platform用于具体业务功能开发。


下面以创建GitEgg-Cloud为例创建Maven父子工程:


1、创建父工程:File > New > Project...,选择Maven,Create from archetype不要勾选,点击Next进入下一步,填写工程信息。


微信图片_20220517175946.png

image.png


2、填写项目名称,选择工程代码存放路径,GroupId 、ArtifactId、Version,然后点击Finish完成创建。


微信图片_20220517175949.png

image.png


3、因为是父工程,所以删除工程下用不到的src目录。此时,pom.xml文件中没有节点<packaging>pom</packaging>,这里不需要处理,当创建子工程之后,这里会自动添加此节点。


微信图片_20220517175952.png

image.png


4、创建第一个子工程,在GitEgg-Cloud工程上点击右键,然后选择:New > Module... > Maven,然后直接Next下一步,在Name处填入子工程名称:gitegg-common,然后点击Finish,子工程创建完成,gitegg-common主要提供系统公共方法及工具。


微信图片_20220517175955.png

image.png


5、然后使用上一步同样的操作步骤,分别创建gitegg-oauth(鉴权),gitegg-gateway(网关),gitegg-plugin(第三方功能扩展)工程模块。使用第1步创建父工程的步骤创建gitegg-service(业务逻辑处理模块)和gitegg-service-api(业务逻辑处理统一封装对外提供服务的api接口)。创建时,在Maven窗口点击右键选择

org.apache.tapestry:quickstart,在信息填写页的Parent中选择gitegg-service/gitegg-service-api建好的完整工程目录如下:


微信图片_20220517175958.png

image.png


GitEgg-Cloud是一款基于SpringCloud整合搭建的企业级微服务应用开发框架,开源项目地址:


Gitee: https://gitee.com/wmz1930/GitEgg


GitHub: https://github.com/wmz1930/GitEgg


欢迎感兴趣的小伙伴Star支持一下。

相关文章
|
算法 Java 微服务
【SpringCloud(1)】初识微服务架构:创建一个简单的微服务;java与Spring与微服务;初入RestTemplate
微服务架构是What?? 微服务架构是一种架构模式,它提出将单一应用程序划分为一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。 每个服务允许在其独立的进程中,服务于服务间采用轻量级的通信机制互相协作(通常是Http协议的RESTful API或RPC协议)。 每个服务都围绕着具体业务进行构建,并且能够被独立的部署到生产环境、类生产环境等。另外应当尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据上下文,选择合适的语言、工具对其进行构建
836 126
|
负载均衡 算法 Java
【SpringCloud(2)】微服务注册中心:Eureka、Zookeeper;CAP分析;服务注册与服务发现;单机/集群部署Eureka;连接注册中心
1. 什么是服务治理? SpringCloud封装了Netfix开发的Eureka模块来实现服务治理 在传统pc的远程调用框架中,管理每个服务与服务之间依赖关系比较复杂,管理比较复杂,所以需要使用服务治理,管理服务于服务之间依赖关系,可以实现服务调用、负载均衡、容错等,实现服务发现与注册
597 0
|
12月前
|
负载均衡 Java API
《深入理解Spring》Spring Cloud 构建分布式系统的微服务全家桶
Spring Cloud为微服务架构提供一站式解决方案,涵盖服务注册、配置管理、负载均衡、熔断限流等核心功能,助力开发者构建高可用、易扩展的分布式系统,并持续向云原生演进。
|
监控 安全 Java
Spring Cloud 微服务治理技术详解与实践指南
本文档全面介绍 Spring Cloud 微服务治理框架的核心组件、架构设计和实践应用。作为 Spring 生态系统中构建分布式系统的标准工具箱,Spring Cloud 提供了一套完整的微服务解决方案,涵盖服务发现、配置管理、负载均衡、熔断器等关键功能。本文将深入探讨其核心组件的工作原理、集成方式以及在实际项目中的最佳实践,帮助开发者构建高可用、可扩展的分布式系统。
721 1
|
Java 区块链 Maven
关于引入maven项目后出现‘parent.relativePath’ of POM错误时的解决方法
关于引入maven项目后出现‘parent.relativePath’ of POM错误时的解决方法
898 3
|
Java jenkins 应用服务中间件
结合Jenkins与Tomcat,实施Maven项目的自动构建和部署流程。
任何项目构建和部署的自动化流程,总离不开对各个环节精细把控与密切配合。涉及到源代码管理、构建工具、持续集成服务器以及最终的运行时环境的协调。通过上述简洁实用的步骤,可以实现Maven项目从源代码到运行状态的无缝过渡,进而提升软件开发的效率与质量。
673 0
|
Java 测试技术 项目管理
【JavaEE】从 0 到 1 掌握 Maven 构建 Java 项目核心技巧 解锁 Java 项目高效管理实用实例
本文从Maven基础概念讲起,涵盖安装配置、核心概念(如POM与依赖管理)及优化技巧。结合Java Web项目实例,演示如何用Maven构建和管理项目,解决常见问题,助你高效掌握这一强大工具,提升Java开发与项目管理能力。适合初学者及进阶开发者学习。资源链接:[点此获取](https://pan.quark.cn/s/14fcf913bae6)。
587 6
|
Java Maven 开发者
maven项目中官方setting.xml文件
`settings.xml` 是 Maven 的配置文件,用于定义用户或全局级别的构建行为。它包含本地仓库路径、网络代理、服务器认证、仓库镜像及构建配置文件等设置,帮助开发者根据环境定制 Maven 行为,提升构建效率与灵活性。
1845 0
|
XML Java 测试技术
从零开始学 Maven:简化 Java 项目的构建与管理
Maven 是一个由 Apache 软件基金会开发的项目管理和构建自动化工具。它主要用在 Java 项目中,但也可以用于其他类型的项目。
1206 1
从零开始学 Maven:简化 Java 项目的构建与管理
|
Java Maven Kotlin
idea maven创建kotlin项目
本文介绍了在IntelliJ IDEA中使用Maven创建Kotlin项目的步骤,包括在`pom.xml`文件中添加Maven中央仓库、配置`kotlin-maven-plugin`插件、指定源目录、添加测试插件和执行插件,以及添加Kotlin测试依赖和标准库依赖。文中还提到了如何通过更换镜像或使用代理来解决依赖下载速度慢的问题,并展示了运行示例代码的截图。
1105 4
idea maven创建kotlin项目

推荐镜像

更多