SpringCloud和SpringBoot版本坑 !
前言
今天博主将为大家分享SpringCloud和SpringBoot版本坑 !不喜勿喷,如有异议欢迎讨论!
以下所写内容均与以前的文章有联系可以前往博文查看,陈永佳的博客
之前的一系列文章讲解了Maven安装以及配置和STS(eclipse)配置Maven,如有不会的同学请前往学习,如果喜欢给个点赞关注哦,谢谢支持!
来来来进入正题(这个问题可给博主坑美了,我到不是版本问题,是又在pom引入了个1.5.3哈哈哈哈哈真是打脸呐!!!)
springCloud 在和spring-boot整合是,spring这边是版本号依赖的;否则会出错;
先来看下官网的版本对应关系:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MZ3daEER-1572402441738)(240D652677004B268A7D23A7BAB90032)]
左边是spring-cloud 版本,右边是spring-boot版本;意思是比如你用了springCloud的greenwich版本,你的springboot版本必须是2.版本,否则会报错;具体的报错信息如下:
12:21:56.781 [main] ERROR - Application startup failed
: .<init>([Ljava/lang/Class;)V
at (:170)
at (:104)
at (:70)
at (:172)
at (:165)
at (:139)
at (:122)
at (:74)
at (:54)
at (:325)
at (:296)
at (:1118)
at (:1107)
at (:18)
Disconnected from the target VM, address: '127.0.0.1:56936', transport: 'socket'
所以大家在整合是一定要对应好版本号;如下所示,博主给出实例:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="/POM/4.0.0" xmlns:xsi="http:///2001/XMLSchema-instance"
xsi:schemaLocation="/POM/4.0.0 /xsd/maven-4.0.">
<modelVersion>4.0.0</modelVersion>
<groupId></groupId>
<artifactId>Jmccms</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>Jmccms</name>
<url>/milestone</url>
<description>CYJ:ChenYongJia 服务提供者Jmccms</description>
<parent>
<groupId></groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<!-- 项目属性配置信息 -->
<properties>
<>UTF-8</>
<>UTF-8</>
<>1.8</>
<!--引入spring-boot 2.1. ,SpringCloud的版本为 Greenwich.M3-->
<></>
<mysql-connector>5.1.39</mysql-connector>
<junit-version>4.12</junit-version>
<druid>1.0.18</druid>
<!--<>6.0.0</>-->
</properties>
<dependencies>
<!-- 引入web依赖 -->
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!-- 引入AOP -->
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
<!--<dependency>
<groupId></groupId>
<artifactId>aspectjrt</artifactId>
<version>1.9.3</version>
</dependency>-->
<!-- SpringCloud Eureka 注册中心依赖 -->
<dependency>
<groupId></groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<!-- SpringCloud Hystrix 微服务容错监控组件:断路器,依赖隔离,服务降级,服务监控 依赖 -->
<dependency>
<groupId></groupId>
<artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
</dependency>
<!-- 权限控制Spring-Oauth2.0的认证模式依赖暂时不用,由于一些注解和API从spring security5.0中移除,所以需要导入下面的依赖包 -->
<!-- spring-cloud-starter-oauth2 -->
<dependency>
<groupId></groupId>
<artifactId>spring-cloud-starter-oauth2</artifactId>
</dependency>
<!-- SpringCloud Feign 依赖 -->
<dependency>
<groupId></groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<!-- Spring Boot JPA 依赖 -->
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<!-- 引入test测试依赖 -->
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- Junit 单元测试 依赖 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<!-- 引入redis数据库依赖 -->
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!-- 引入jdbc链接依赖 -->
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!-- 引入security权限依赖模块 -->
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<!-- 引入Thymeleaf模板 -->
<dependency>
<groupId></groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<!-- 引入mysql链接依赖 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql-connector}</version>
</dependency>
<!-- 引入 Lombok 依赖 -->
<dependency>
<groupId></groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<!-- Spring Boot devtools 热部署 依赖 -->
<!--<dependency>
<groupId></groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>-->
<!-- alibaba的fastjson工具 -->
<dependency>
<groupId></groupId>
<artifactId>fastjson</artifactId>
<version>1.2.56</version>
</dependency>
<!-- 引入Gson -->
<dependency>
<groupId></groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
</dependency>
<!-- 阿里开源EXCEL -->
<dependency>
<groupId></groupId>
<artifactId>easyexcel</artifactId>
<version>1.1.2-beta5</version>
</dependency>
<!--<dependency>
<groupId></groupId>
<artifactId>-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>-->
<!-- 用于字符串工具类 -->
<dependency>
<groupId></groupId>
<artifactId>commons-lang3</artifactId>
<!--<version>3.8.1</version>-->
<version>3.6</version>
<scope>provided</scope>
</dependency>
<!-- 使用httpclient获取天气信息 -->
<dependency>
<groupId></groupId>
<artifactId>httpclient</artifactId>
<version>4.5.8</version>
</dependency>
<!-- 引入工作流 -->
<!--<dependency>
<groupId></groupId>
<artifactId>activiti-spring-boot-starter-basic</artifactId>
<version>${}</version>
</dependency>-->
<!--<dependency>
<groupId></groupId>
<artifactId>activiti-spring-boot-starter-actuator</artifactId>
<version>${}</version>
</dependency>-->
<!--<dependency>
<groupId></groupId>
<artifactId>activiti-rest</artifactId>
<version>${}</version>
</dependency>-->
<!-- 整合swagger2 -->
<dependency>
<groupId></groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<!-- 整合swagger-ui -->
<dependency>
<groupId></groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
<!-- eu帮助类 -->
<dependency>
<groupId></groupId>
<artifactId>UserAgentUtils</artifactId>
<version>1.21</version>
</dependency>
</dependencies>
<!-- SpringCloud 所有子项目 版本集中管理.MS:统一所有SpringCloud依赖项目的版本 依赖 -->
<dependencyManagement>
<dependencies>
<dependency>
<groupId></groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<!-- SpringBoot 2. 以上版本这样配置 -->
<version>${}</version>
<!-- <version>Dalston.RC1</version> -->
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<!-- SpringBoot 项目打jar包的Maven插件 -->
<plugin>
<groupId></groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<!-- SpringBoot项目打包jar名称 -->
<finalName>jmccms</finalName>
</build>
<!-- SpringCloud 官方远程仓库.MS:部分本地仓库和镜像仓库没有SpringCloud子项目依赖。 -->
<repositories>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
</project>
到这里SpringCloud和SpringBoot版本坑 !分享完毕,各位小伙伴快去试试吧!
最后
-
更多参考精彩博文请看这里:《陈永佳的博客》
-
喜欢博主的小伙伴可以加个关注、点个赞哦,持续更新嘿嘿!