码迷,mamicode.com
首页 > 编程语言 > 详细

SpringCloud踩坑

时间:2020-02-18 16:44:11      阅读:437      评论:0      收藏:0      [点我收藏+]

标签:other   分析   pre   depend   cli   lease   init   冲突   oca   

今天在使用 SpringCloud 时遇到了一个问题,感觉有不少小伙伴会遇到,所以记录下来

版本说明

SpringBoot      2.2.4.RELEASE
SpringCloud     Greenwich.SR1

情景复现

在 pom.xml 中加入如下依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

启动项目后报错 The following method did not exist: org.springframework.boot.actuate.health.CompositeHealthIndicator

***************************
APPLICATION FAILED TO START
***************************

Description:

An attempt was made to call a method that does not exist. The attempt was made from the following location:

    org.springframework.cloud.client.discovery.health.DiscoveryCompositeHealthIndicator.<init>(DiscoveryCompositeHealthIndicator.java:42)

The following method did not exist:

    org.springframework.boot.actuate.health.CompositeHealthIndicator.<init>(Lorg/springframework/boot/actuate/health/HealthAggregator;)V

The method's class, org.springframework.boot.actuate.health.CompositeHealthIndicator, is available from the following locations:

    jar:file:/Volumes/Others/MVNrepository/org/springframework/boot/spring-boot-actuator/2.2.4.RELEASE/spring-boot-actuator-2.2.4.RELEASE.jar!/org/springframework/boot/actuate/health/CompositeHealthIndicator.class

It was loaded from the following location:

    file:/Volumes/Others/MVNrepository/org/springframework/boot/spring-boot-actuator/2.2.4.RELEASE/spring-boot-actuator-2.2.4.RELEASE.jar


Action:

Correct the classpath of your application so that it contains a single, compatible version of org.springframework.boot.actuate.health.CompositeHealthIndicator

问题分析

问题所在就是——版本冲突
我使用的 SpringBoot 版本是2.2.4,而 SpringCloud 版本是 Greenwich,二者的兼容还是有一定问题的,所以在启动时会报错:在 spring-boot-actuator-2.2.4.RELEASE.jar 下找不到 CompositeHealthIndicator.class

解决方法

解决方法有如下两种,我都已经测试过,这两种方法都可以解决问题

  1. 降级 SpringBoot
    把 SpringBoot 从 2.2.4.RELEASE 降级成 2.1.4.RELEASE
  2. 升级 SpringCloud
    把 SpringCloud 从 Greenwich.SR1 升级成 Hoxton.SR1

按如上所示即可成功解决问题,小伙伴们赶紧去试一下吧~

SpringCloud踩坑

标签:other   分析   pre   depend   cli   lease   init   冲突   oca   

原文地址:https://www.cnblogs.com/ypf666/p/12326603.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!