<已解决>Caused by: java.lang.ClassNotFoundException: org.springframework.boot.context.properties
作者:mmseoamin日期:2023-12-18

  前言

在学习spring cloud 的项目知识中,遇到了许多小bug,在学习过程中以一套流程 创建新模块module->往pom.xml里面导入依赖->修改yml文件->主启动类springbootApplication->业务逻辑Controller->测试,这一套流程中往往卡在依赖导入这一部分,我遇到的问题就是springboot和springcloud版本不兼容的问题

报错信息:

​1.无法解析 org.springframework.boot:spring-boot-actuator:2.2.2.RELEASE
2.Caused by: java.lang.ClassNotFoundException: org.springframework.boot.context.properties.ConfigurationBeanFactoryMetadata
​3.Could not find class [org.springframework.boot.actuate.audit.AuditEventsEndpoint]
4.AuditEventsEndpointAutoConfiguration

这是我遇到的报错信息我只截取了一部分在网络上查找,但是找到的答案都 似是而非

有的说是修改Maven的本地仓库,有的说是修改setting.xml,有的说是写一个配置类来进行修改,还有的是说springboot版本和springcloud版本不兼容的问题,其实就是这个!

我导入的依赖是:


      org.springframework.boot
      spring-boot-starter-actuator
 

导入之后在pom.xml里面没有报红,但是在maven的依赖项上面,关于这个依赖就是下划线是红色,一直无法解析,并且启动类启动报错。

解决方案:

这个时候我们应该去springcloud 官网:去查看springcloud和springbootbanben兼容的内容

<已解决>Caused by: java.lang.ClassNotFoundException: org.springframework.boot.context.properties,第1张

<已解决>Caused by: java.lang.ClassNotFoundException: org.springframework.boot.context.properties,第2张

 找到自己pom.xml中springcloud 的版本号 去对照springboot版本号是否正确

<已解决>Caused by: java.lang.ClassNotFoundException: org.springframework.boot.context.properties,第3张

 我这里的springcloud版本号是Hoxton.SR1,而springboot版本号是2.2.2RELEASE,如果这个springboot版本号不行,就还可以换成2.3.x.RELEASE的(x自己琢磨着取)

总结:

导入依赖的时候,可能因为网络的问题,导致依赖进不去,我么可以把依赖一点一点导进去,另外我们可以在正确的基础上选择与之相匹配的另一版本号