一、遇到的问题:
pom父工程 dependencyManagement中spring-cloud-dependencies中包含的包如:
- spring-core
- spring-cloud-starter-netflix-zuul
- spring-cloud-starter-netflix-eureka-client
- spring-cloud-starter-netflix-eureka-server
这些包如果不写版本号就无法引入,导致以下注解无法使用,报红。
@EnableEurekaServer
@SpringBootApplication
@EnableZuulProxy
@EnableDiscoveryClient
二、解决的办法:
原因是由于spring-cloud-dependencies包的版本问题,应当将版本由Finchley.SR1更改为Finchley.RELEASE,之后更新一下包问题就解决了。
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Finchley.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
三、反思:
其实很早之前我就看到了有的解决办法和我的代码在spring-cloud-dependencies的版本上不同,并没有在意。这是一种选择性忽视,内心坚信着不是这里的问题,这样一种心态,是这个问题困扰我两天的原因。要锻炼对细微之处的观察力,在检查错误时,应当不放过任何一处不同,即便再坚信此处不是问题所在,也应当试一试,要勇于敢于乐于尝试。