手把手教你梳理springcloud与springboot与springcloudalibaba的版本对应关系
·
一. 确定springcloud版本
- 先到spring官网查看springcloud的基本介绍
往下翻可以看到springcloud与springboot的版本关系图

- 举例:我的项目选用的springboot3.0.13,那么对应的springcloud版本就是2020.0.x
然后可以点击下图所示查看2020.0.x都有哪些小版本,自己选一个即可

二. 确定springcloudalibaba版本
现在假设咱们确定好了springboot3.013和springcloud2022.0.2,如何确认springcloudalibaba版本呢
- 进入springcloudalibaba的github项目中的wiki的版本说明一栏,点击这里一键跳转


- 找到springcloud2022.0.x和springboot(3.0.13>3.0.2)对应的一栏

那么我们的springcloudalibaba版本就是2022.0.0.0
三. 如何在springcloud项目中指定版本呢
在父模块中的pom文件中确定版本号
<!-- 定义项目的属性 -->
<properties>
<!-- 定义Java版本 -->
<java.version>17</java.version>
<!-- 定义Maven编译器的源代码版本 -->
<maven.compiler.source>17</maven.compiler.source>
<!-- 定义Maven编译器的目标版本 -->
<maven.compiler.target>17</maven.compiler.target>
<!-- 定义项目构建的源编码 -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- 定义项目报告的输出编码 -->
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<!-- 定义是否跳过测试 -->
<skipTests>true</skipTests>
<!-- 定义Spring Cloud版本 -->
<spring.cloud.version>2022.0.2</spring.cloud.version>
<!-- 定义Spring Cloud Alibaba版本 -->
<spring.cloud-alibaba.version>2022.0.0.0</spring.cloud-alibaba.version>
<!-- 定义Lombok版本 -->
<lombok.version>1.18.30</lombok.version>
</properties>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.0.13</version>
</parent>
<!-- 依赖管理 -->
<dependencyManagement>
<dependencies>
<!-- Spring Cloud 依赖 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring.cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- Spring Cloud Alibaba 依赖 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${spring.cloud-alibaba.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- Lombok 依赖 -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok.version}</version>
<optional>true</optional>
</dependency>
</dependencies>
</dependencyManagement>
四. 为什么不需要引入spring-boot-dependencies来控制版本呢
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.0.13</version>
</parent>
上面的pom示例指定了spring-boot-starter-parent:3.0.13为父项目,点进去可以看到spring-boot-starter-parent指定了spring-boot-dependencies为父项目

更多推荐




所有评论(0)