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

举报
全栈程序猿 发表于 2023/07/10 10:15:37 2023/07/10
1.2k+ 0 0
【摘要】  使用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进入下一步,填写工程信息。

image.png

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

image.png

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

image.png

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

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建好的完整工程目录如下:

image.png

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

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

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

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。