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

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

  • 相关阅读:
    我的程序优化尽量减少数据库连接操作
    dreamhappy博客索引
    一步一步实现网站的多语言版本
    spring入门基础
    discuz模版的学习
    第七次jsp作业
    第五次作业
    jsp第二次作业
    第六次作业
    jsp第六周作业
  • 原文地址:https://www.cnblogs.com/taiyii/p/12326603.html
Copyright © 2011-2022 走看看