首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >org.springframework.boot.context.properties.ConfigurationBeanFactoryMetadata :java.lang.ClassNotFoundException

org.springframework.boot.context.properties.ConfigurationBeanFactoryMetadata :java.lang.ClassNotFoundException
EN

Stack Overflow用户
提问于 2021-11-21 11:18:14
回答 1查看 166关注 0票数 0

今天我把我的Spring Cloud升级到了2020.0.3版本,把Spring Boot版本升级到了2.4.9。当我运行应用程序时,会显示这样的错误:

代码语言:javascript
复制
Caused by: java.lang.ClassNotFoundException: org.springframework.boot.context.properties.ConfigurationBeanFactoryMetadata
at java.net.URLClassLoader.findClass(URLClassLoader.java:605) ~[?:?]
at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:1183) ~[?:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:1098) ~[?:?]
at org.springframework.boot.loader.LaunchedURLClassLoader.loadClass(LaunchedURLClassLoader.java:151) ~[dolphin-gateway-1.0.0-SNAPSHOT.jar:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:1081) ~[?:?]
at java.lang.Class.getDeclaredMethodsImpl(Native Method) ~[?:?]
at java.lang.Class.getDeclaredMethods(Class.java:1146) ~[?:?]
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:463) ~[spring-core-5.3.9.jar!/:5.3.9]
at org.springframework.util.ReflectionUtils.doWithLocalMethods(ReflectionUtils.java:321) ~[spring-core-5.3.9.jar!/:5.3.9]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.buildLifecycleMetadata(InitDestroyAnnotationBeanPostProcessor.java:232) ~[spring-beans-5.3.9.jar!/:5.3.9]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.findLifecycleMetadata(InitDestroyAnnotationBeanPostProcessor.java:210) ~[spring-beans-5.3.9.jar!/:5.3.9]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(InitDestroyAnnotationBeanPostProcessor.java:149) ~[spring-beans-5.3.9.jar!/:5.3.9]
at org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessMergedBeanDefinition(CommonAnnotationBeanPostProcessor.java:294) ~[spring-context-5.3.9.jar!/:5.3.9]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyMergedBeanDefinitionPostProcessors(AbstractAutowireCapableBeanFactory.java:1098) ~[spring-beans-5.3.9.jar!/:5.3.9]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:576) ~[spring-beans-5.3.9.jar!/:5.3.9]
... 41 more

我在互联网上搜索了一下,发现这个问题是由版本不兼容引起的。现在版本是兼容的,我看了官方的document,为什么还显示这个错误?我该怎么做才能修复它呢?我用org.springframework:spring-beans:5.3.9找到了org.springframework.boot:spring-boot-starter-data-redis,有没有可能修复?

代码语言:javascript
复制
$ ./script/dependencies.sh                                                                                                                                                           ‹ruby-2.7.2›
+ ./gradlew :dolphin-gateway:dependencies --configuration runtimeClasspath
+ grep -v '(*)'
+ grep -C 10 spring-beans
|    |    +--- org.apache.commons:commons-collections4:4.4
|    |    +--- org.apache.commons:commons-lang3:3.9
|    |    +--- org.springframework.boot:spring-boot-starter-parent:2.4.9
|    |    +--- org.springframework.boot:spring-boot-starter-data-redis -> 2.4.9
|    |    |    \--- org.springframework.boot:spring-boot-starter:2.4.9
|    |    |         +--- org.springframework.boot:spring-boot:2.4.9
|    |    |         |    +--- org.springframework:spring-core:5.3.9
|    |    |         |    |    \--- org.springframework:spring-jcl:5.3.9
|    |    |         |    \--- org.springframework:spring-context:5.3.9
|    |    |         |         +--- org.springframework:spring-aop:5.3.9
|    |    |         |         |    +--- org.springframework:spring-beans:5.3.9
|    |    |         |         \--- org.springframework:spring-expression:5.3.9
|    |    |         +--- org.springframework.boot:spring-boot-autoconfigure:2.4.9
|    |    |         +--- org.springframework.boot:spring-boot-starter-logging:2.4.9
|    |    |         |    \--- org.slf4j:jul-to-slf4j:1.7.32
|    |    |         |         \--- org.slf4j:slf4j-api:1.7.32
|    |    |         +--- jakarta.annotation:jakarta.annotation-api:1.3.5
|    |    |         \--- org.yaml:snakeyaml:1.27
|    |    +--- org.springframework.data:spring-data-redis:2.5.0
|    |    |    +--- org.springframework.data:spring-data-keyvalue:2.5.0 -> 2.4.11
|    |    |    |    +--- org.springframework.data:spring-data-commons:2.4.11
(base)
EN

回答 1

Stack Overflow用户

发布于 2021-11-21 11:37:03

似乎Spring Boot从2.4.1版本中删除了类ConfigurationBeanFactoryMetadata,我将版本降级到2.4.0以避免这个问题。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70054008

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档