该错误的引发是源于我在class文件中使用了以下bean。
@Autowired private LoadBalancerClient loadBalancerClient;
而这个bean没有实例化导致了错误。那bean为什么没有实例化,我们追踪到这个接口源代码处,如下图所示:
我们发现这个源码在我们引入的spring-cloud-starter-security中定义的,但是这个jar包没有具体实例化的类。
从接口所在具体目录,就明显的发现接口loadBalancerClient在spring-cloud-common包里,这个包的作用做了一系列的扩展规范的定义,为了方便子类实例化以后自动注入到spring容器中做准备,并没有做具体实现,由此看出,我应该少引入了实现jar包,后来就很快找到具体实现的。
由此,这样工程就可以完整实例化了,并加载完所有的bean,并正常启动。