目录
工程搭建
因为拆分成了微服务,所以要拆分出多个项目,但是IDEA只能一个窗口有一个项目,为了解决这个问题,我们采用父子工程搭建。
搭建父子工程
创建父工程
1.
创建⼀个空的Maven项⽬, 删除所有代码, 只保留pom.xml


2. 完善pom⽂件
使⽤properties来进⾏版本号的统⼀管理, 使⽤dependencyManagement来管理依赖, 声明⽗⼯程的打包⽅式为pom.
- "1.0" encoding="UTF-8"?>
"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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
4.0.0 -
-
com.wmh -
spring-cloud-demo1 -
1.0-SNAPSHOT -
pom -
- <module>order-servicemodule>
- <module>product-servicemodule>
-
-
-
-
org.springframework.boot -
spring-boot-starter-parent -
3.1.6 -
-
-
-
17 -
17 -
17 -
3.0.3 -
8.0.33 -
2022.0.3 -
-
-
-
-
org.projectlombok -
lombok -
true -
-
-
-
-
-
-
org.springframework.cloud -
spring-cloud-dependencies -
${spring-cloud.version} -
pom -
import -
-
-
org.mybatis.spring.boot -
mybatis-spring-boot-starter -
${mybatis.version} -
-
-
com.mysql -
mysql-connector-j -
${mysql.version} -
-
-
org.mybatis.spring.boot -
mybatis-spring-boot-starter-test -
${mybatis.version} -
test -
-
-
-
DependencyManagement 和 Dependencies:
1. dependencies :将所依赖的jar直接加到项⽬中. ⼦项⽬也会继承该依赖.
2. dependencyManagement :只是声明依赖, 并不实现Jar包引⼊. 如果⼦项⽬需要⽤到相关依赖,需要显式声明. 如果⼦项⽬没有指定具体版本, 会从⽗项⽬中读取version. 如果⼦项⽬中指定了版本号,就会使⽤⼦项⽬中指定的jar版本. 此外⽗⼯程的打包⽅式应该是pom,不是jar, 这⾥需要⼿动使⽤ packaging 来声明.
SpringBoot 实现依赖jar包版本的管理, 也是这种⽅式

依赖Jar的版本判断
-
-
-
org.projectlombok -
lombok -
true -
-
-
-
-
-
-
com.mysql -
mysql-connector-j -
${mysql.version} -
-
-
上述代码中, lombok 会被直接引⼊到当前项⽬以及⼦项⽬中, mysql-connector-j 不会实际引⼊jar,
⼦项⽬继承时必须显式声明.
Spring Cloud版本
Spring Cloud 是基于SpringBoot搭建的, 所以Spring Cloud 版本与SpringBoot版本有关 。
创建子项目-订单服务
声明项⽬依赖 和 项⽬构建插件
-
-
-
org.springframework.boot -
spring-boot-starter-web -
-
-
com.mysql -
mysql-connector-j -
-
-
-
org.mybatis.spring.boot -
mybatis-spring-boot-starter -
-
-
-
-
-
-
org.springframework.boot -
spring-boot-maven-plugin -
-
-
创建子项目-商品服务
声明项⽬依赖 和 项⽬构建插件
-
-
-
org.springframework.boot -
spring-boot-starter-web -
-
-
com.mysql -
mysql-connector-j -
-
-
-
org.mybatis.spring.boot -
mybatis-spring-boot-starter -
-
-
-
-
-
-
org.springframework.boot -
spring-boot-maven-plugin -
-
-

【微信号】Q3265047996
微信名片


评论记录:
回复评论: