目前,我使用 spring boot 整合 eureka 完成跨项目访问,在基础测试的时候启动 eureka-client 没有问题,但是整合到 完整的 spring boot 项目中,出现了启动 eureka-client 报错的问题:

'com.netflix.appinfo.HealthCheckHandler' that could not be found.

 Bean method 'eurekaHealthCheckHandler' not loaded because @ConditionalOnProperty (eureka.client.healthcheck.enabled) did not find property 'eureka.client.healthcheck.enabled'

完整的错误代码如下:


Error starting ApplicationContext. To display the auto-configuration report re-run your application with 'debug' enabled.
2018-07-17 11:36:22.330 ERROR 12447 --- [  restartedMain] o.s.b.d.LoggingFailureAnalysisReporter   : 

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

Description:

Parameter 3 of method eurekaRegistration in org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration$RefreshableEurekaClientConfiguration required a bean of type 'com.netflix.appinfo.HealthCheckHandler' that could not be found.
	- Bean method 'eurekaHealthCheckHandler' not loaded because @ConditionalOnProperty (eureka.client.healthcheck.enabled) did not find property 'eureka.client.healthcheck.enabled'


Action:

Consider revisiting the conditions above or defining a bean of type 'com.netflix.appinfo.HealthCheckHandler' in your configuration.

查了很久,没有很直接的答案,但是回来仔细看错误信息,还是很明确的说少了一个配置“'eureka.client.healthcheck.enabled'”,

于是在 eureka-client 项目的 application.properties 文件中添加了:

eureka.client.healthcheck.enabled=true

问题就解决了。具体什么原因还不明确,至少现在问题解决了,等有时间自己再研究吧。

我现在比较忙,没有时间整理源代码公开。有问题留言吧

 

 

 

 

 

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐