一、创建仓库
注意:仓库名称、路径、选择语言、添加.gitignore、添加开源许可证、选择分支模型。
二、拉取项目
三、创建微服务模块-记账管理微服务
选择微服务必要组件
创建好第一个记账微服务后,项目结构。
然后安装上述步骤,依次创建出其它微服务模块。
各微服务共同点:
1、都导入了必备的spring web,OpenFeign
2、每一个服务,包名:com.yanxizhu.ifamily.xxxxx(booking/firend/。。。服务名)
3、模块名:ifamily-xxxxx(booking/fired/.......服务名)
实例的包名:com.yanxizhu.ifamily.booking
模块名:ifamily-booking
四、设置总项目聚合各微服务
一、随便复制一个微服务的pom文件,粘贴到总项目中。
本次项目,如,复制ifamily-booking微服务中的pom.xml到总项目ifamily中。
二、修改总项目中的pom.xml文件。
1、修改模块名、项目名、描述
修改前:
<groupId>com.yanxizhu.ifamily</groupId>
<artifactId>ifamily-booking</artifactId><!--1、模块名修改为总项目名-->
<version>0.0.1-SNAPSHOT</version>
<name>ifamily-booking</name><!--2、修改为总项目名-->
<description>家庭管理-记账服务</description><!--3、修改为聚合服务,把其它微服务聚合起来-->
修改后:
<groupId>com.yanxizhu.ifamily</groupId>
<artifactId>ifamily</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>ifamily</name>
<description>聚合服务</description>
2、删除服务依赖
<parent><!--删除父引用-->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.6.4</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
3、删除多余的依赖:
4、添加类型,为pom
<packaging>pom</packaging>
5、聚合其他微服务模块
<modules><!--聚合其他微服务-->
<module>ifamily-booking</module>
</modules>
最终的pom文件内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.yanxizhu.ifamily</groupId>
<artifactId>ifamily</artifactId><!--模块名修改为总项目名-->
<version>0.0.1-SNAPSHOT</version>
<name>ifamily</name><!--修改为总项目名-->
<description>聚合服务</description><!--修改为聚合服务,把其它微服务聚合起来-->
<packaging>pom</packaging><!--设置类型-->
<modules><!--聚合其他微服务-->
<module>ifamily-booking</module>
</modules>
<!--可以删除多余的其他依赖-->
<!--最后把总项目添加到maven中-->
</project>
6、把总项目添加到maven中
一共就上面6个步骤。之后再maven管理中就可以看到总服务聚合了其它微服务模块。
总结:
1、删除父依赖
2、删除依赖
3、修改项目名、模块名、描述
4、设置类型
5、聚合其它微服务模块
6、将服务添加到maven中
当在总项目执行命令时,其它项目也一起执行了,例如父模块clean,其它微服务模块也会同时clearn。
五、过滤垃圾文件
修改总项目总的.gitignore文件,过滤不需要提交到仓库的文件。
**/mvnw
**/mvnw.cmd
**/.mvn
**/target/
.idea
**/.gitignore
**/ :任意路径
target: maven编译(complile)后产生的文件
.idea: idea工具项目的
.gitignore:子模块的.gitignore文件
过滤的文件颜色为灰色。
六、创建各微服务需要的公共模块
创建一个maven的公共模块,选择总项目,右键新建module,选择Maven,(不用选择其它)直接下一步。
填写公共模块名,包名。
给公共模块的pom添加描述:
<dependencies>各微服务公共的依赖,bean,工具类等等</dependencies>
在各微服务中加入公共模块依赖:
ifamily-booking微服务pom文件引入公共模块依赖:
<dependency>
<groupId>com.yanxizhu.ifamily</groupId>
<artifactId>ifamily-common</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
最后就可以在公共模块中,引入一些各模块需要的依赖,如mybatis、Lombak,以及创建一个常用的公共工具类。相应的总项目总也会自动添加新建的common公共模块。
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.yanxizhu.ifamily</groupId>
<artifactId>ifamily</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>ifamily</name>
<description>聚合服务</description>
<packaging>pom</packaging>
<modules>
<module>ifamily-booking</module>
<module>ifamily-common</module>
</modules>
</project>
新建工具包
com.yanxizhu.common.utils
至此,整个微服务项目就搭建好了。之后可以引入一些公共的工具类,还可以使用逆向共工程生成实体、server、controller等模块,可以看一篇《逆向工程生成各模块代码》。
评论 (0)