我收到以下错误 应用程序无法启动
描述:
尝试调用不存在的方法。尝试从以下位置进行:
org.springframework.boot.actuate.autoconfigure.startup.startupendpointautoconfiguration$applicationstartupcondition.getmatchoutcome(startupendpointautoconfiguration.java:63)
以下方法不存在:
org.springframework.beans.factory.config.configurablelistablebeanfactory.getapplicationstartup()lorg/springframework/core/metrics/applicationstartup;
该方法的类 org.springframework.beans.factory.config.configurablelistablebeanfactory 可从以下位置获取: jar:文件:/users/doc/.m2/repository/org/springframework/spring-beans/5.2.5.release/spring-beans-5.2.5.release.jar!/org/springframework/beans/factory/config /configurablelistablebeanfactory.class
它是从以下位置加载的:
file:/users/doc/.m2/repository/org/springframework/spring-beans/5.2.5.release/spring-beans-5.2.5.release.jar
行动:
更正应用程序的类路径,使其包含单个兼容版本的 org.springframework.beans.factory.config.configurablelistablebeanfactory
pom
org.springframework.boot spring-boot-starter-parent 2.2.6.RELEASE 1.8 1.3.1 1.1.7.RELEASE 3.1.1 2.3.2 2.4.0 org.springframework.retry spring-retry ${spring-retry.version} org.springframework.cloud spring-cloud-netflix-core ${spring-cloud-netflix-core.version} org.springframework.cloud spring-cloud-vault-config ${spring-cloud-vault-config.version} org.springframework.vault spring-vault-core ${spring-vault-core.version} org.springframework.cloud spring-cloud-dependencies Hoxton.SR6 io.springfox springfox-swagger2 ${springfox-swagger2.version} io.springfox springfox-swagger-ui ${springfox-swagger2.version} io.springfox springfox-staticdocs ${springfox-swagger2.version} org.springframework.cloud spring-cloud-vault-config ${spring-cloud-vault-config.version} org.springframework.vault spring-vault-core ${spring-vault-core.version} org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-actuator org.springframework.boot spring-boot-actuator-autoconfigure 2.4.0 mysql mysql-connector-java 5.1.25 org.springframework.boot spring-boot-starter-data-jpa org.springframework.boot spring-boot-starter-jdbc org.springframework.retry spring-retry org.springframework.cloud spring-cloud-starter-openfeign 2.0.1.RELEASE org.springframework.cloud spring-cloud-starter-netflix-ribbon 2.1.0.RELEASE
正确答案
您正试图超越 spring boot 和 spring cloud 依赖管理,并包含大量不兼容的版本。只需在 dependencymanagement 部分添加 spring-cloud-dependency 即可简化依赖关系管理。删除所有其他的,因为它们已经由 spring boot 或您拥有的 spring cloud 依赖项管理。
接下来从 dependencie 部分的依赖项中删除版本,并删除 spring-boot-actuator-autoconfiguration 依赖项,该依赖项包含在 spring-boot-starter 中。
org.springframework.boot spring-boot-starter-parent 2.2.13.RELEASE 1.8 2.4.0 org.springframework.cloud spring-cloud-dependencies Hoxton.SR12 pom import io.springfox springfox-swagger2 ${springfox-swagger2.version} io.springfox springfox-swagger-ui ${springfox-swagger2.version} io.springfox springfox-staticdocs ${springfox-swagger2.version} org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-actuator mysql mysql-connector-java org.springframework.boot spring-boot-starter-data-jpa org.springframework.boot spring-boot-starter-jdbc org.springframework.retry spring-retry org.springframework.cloud spring-cloud-starter-openfeign org.springframework.cloud spring-cloud-starter-netflix-ribbon org.springframework.cloud spring-cloud-starter-vault-config
现在,依赖项由兼容版本中的 spring boot 和 spring cloud 正确管理。










