问题描述
我已将 SpringBoot 版本 2.1.0 升级到 2.2.2.RELEASE
I am upgraded SpringBoot version 2.1.0 to 2.2.2.RELEASE
java:openjdk11弹簧引导:v2.2.0.RELEASEspringCloudVersion : Hoxton.RC1
java : openjdk11spring-boot: v2.2.0.RELEASEspringCloudVersion : Hoxton.RC1
错误:
应用程序无法启动
说明:
尝试调用不存在的方法.尝试是从以下位置进行的:
An attempt was made to call a method that does not exist. The attempt was made from the following location:
springfox.documentation.spring.web.plugins.DocumentationPluginsManager.createContextBuilder(DocumentationPluginsManager.java:152)
springfox.documentation.spring.web.plugins.DocumentationPluginsManager.createContextBuilder(DocumentationPluginsManager.java:152)
以下方法不存在:
org.springframework.plugin.core.PluginRegistry.getPluginFor(Ljava/lang> /Object;Lorg/springframework/plugin/core/Plugin;)Lorg/springframework/plugin/core/Plugin;
该方法的类 org.springframework.plugin.core.PluginRegistry 可从以下位置获得:
jar:file:/home/cuelogic.local/kanisha.modi/.gradle/caches/modules-2/files-2.1/org.springframework.plugin/spring-plugin-core/2.0.0.RELEASE/95fc8c13037630f4aba9c51141f535becec00fe6/spring-plugin-core-2.0.0.RELEASE.jar!/org/springframework/plugin/core/PluginRegistry.class
它是从以下位置加载的:
file:/home/cuelogic.local/kanisha.modi/.gradle/caches/modules-2/files-2.1/org.springframework.plugin/spring-plugin-core/2.0.0.RELEASE/95fc8c13037630f4aba9c51141f535becec00fe6/spring-plugin-core-2.0.0.RELEASE.jar
行动:
更正应用程序的类路径,使其包含一个兼容版本的 org.springframework.plugin.core.PluginRegistry
错误导致
Caused by: java.lang.NoSuchMethodError:
org.springframework.plugin.core.PluginRegistry.getPluginFor(Ljava/lang/Object;Lorg/springframework/plugin/core/Plugin;)Lorg/springframework/plugin/core/Plugin;
at
springfox.documentation.spring.web.plugins.DocumentationPluginsManager.createContextBuilder(DocumentationPluginsManager.java:152)
at
springfox.documentation.spring.web.plugins.DocumentationPluginsBootstrapper.defaultContextBuilder(DocumentationPluginsBootstrapper.java:106)
at
springfox.documentation.spring.web.plugins.DocumentationPluginsBootstrapper.buildContext(DocumentationPluginsBootstrapper.java:91)
at
springfox.documentation.spring.web.plugins.DocumentationPluginsBootstrapper.start(DocumentationPluginsBootstrapper.java:154)
at
org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:182)
... 101 common frames omitted
build.gradle
dependencies {
compile "org.springframework.cloud:spring-cloud-starter-netflix-eureka-client"
compile "io.opentracing.contrib:opentracing-spring-jaeger-cloud-starter:1.0.1"
compile "org.springframework.boot:spring-boot-starter"
compile "org.springframework.boot:spring-boot-starter-amqp"
compile "org.springframework.boot:spring-boot-starter-web"
compile "org.springframework.boot:spring-boot-starter-actuator"
compile "org.springframework.boot:spring-boot-starter-tomcat"
compile "org.springframework.boot:spring-boot-starter-security"
compile "org.springframework.boot:spring-boot-starter-logging"
compile "org.springframework.boot:spring-boot-starter-data-rest"
compile "org.springframework.boot:spring-boot-starter-data-mongodb"
compile "org.springframework.boot:spring-boot-starter-aop"
compile "org.springframework:springloaded:1.2.8.RELEASE"
compile "org.springframework.security:spring-security-web"
compile "org.springframework.security:spring-security-config"
compile "org.apache.commons:commons-collections4:4.1"
compile "com.fasterxml.jackson.core:jackson-databind:2.9.10"
compile "com.google.guava:guava:${guava_version}"
compile(group: 'io.springfox', name: 'springfox-swagger2', version: '2.7.0') {
exclude(module: 'guava')
}
compile "javax.cache:cache-api:1.1.0"
compile "org.springframework.boot:spring-boot-starter-websocket"
compile "org.springframework.boot:spring-boot-configuration-processor"
compile "org.springframework.boot:spring-boot-starter-cache"
compile "com.hazelcast:hazelcast-spring:3.12"
compile "com.hazelcast:hazelcast-eureka-one:1.0.2"
compile "org.reflections:reflections:0.9.11"
compile group: 'io.opentracing.contrib', name: 'opentracing-spring-cloud-mongo-starter', version: '0.3.12'
}
如何解决这个问题?请帮助我,将不胜感激.我想将我的应用程序升级到 springboot v2.2.2 .所以需要这个版本的解决方案.
How to solve this issue? Please help me it would be grateful.I want to upgrade my application to springboot v2.2.2 .So need a solution for this version.
推荐答案
更新您的 springfox-swagger 版本.我在 boot 2.2.2 下运行 springfox 2.9.2
Update your springfox-swagger version. I have springfox 2.9.2 running with boot 2.2.2
编辑 98.01.2020:
你不知何故在你的类路径中得到了 spring-plugin-core-2.2.0.RELEASE.SpringFox 需要 1.2.0 版本,Spring Boot 2.2.2 本身不拉这个. 可以运行 gradle dependencies --configuration runtimeClasspath 看看这个版本拉的是哪个依赖吗?
You somehow got spring-plugin-core-2.2.0.RELEASE in your classpath. SpringFox needs version 1.2.0, Spring Boot 2.2.2 itself does not pull this in. Can you run gradle dependencies --configuration runtimeClasspath and check which dependency pulls in this version?
这篇关于将 spring boot 从 2.1.0 升级到 2.2.2.RELEASE ,现在启动时出现异常的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!