zoukankan      html  css  js  c++  java
  • SpringCloud踩坑

    今天在使用 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

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

  • 相关阅读:
    一个页面从输入url到页面加载显示完成,中间都经历了什么
    获取鼠标点击的是那个键位、阻止鼠标点击的默认事件
    获取鼠标的位置
    图片上传
    jQuery实现瀑布流(pc、移动通用)
    怎么用js或jq点击展开,出现隐藏的DIV,点击收起DIV又隐藏起来.
    js商城倒计时
    页面跳转前动画加载,页面跳转后记住滚动位置
    乐观锁与悲观锁
    过滤器、监听器、拦截器的区别
  • 原文地址:https://www.cnblogs.com/taiyii/p/12326603.html
Copyright © 2011-2022 走看看