Closed yjy1992 closed 3 years ago
this is my pom.xml
`
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-server</artifactId>
</dependency>
<!--amqp -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bus-amqp</artifactId>
</dependency>
</dependencies>`
my spring boot version
`
`
my spirng cloud version
You are not showing any versions in your POM, but based on the stack trace you are definitely using old and potentially incompatible versions of Rabbit, stream etc. Perhaps you are manually managing versions of individual dependencies which results in this incompatibility. Consider relying on the cloud BOM and let it pull the dependencies
Just to add to the above, com.rabbitmq.client.ShutdownListener
was introduced in RabbitMQ client since v. 4.x. So look at the version of RabbitMQ libraries on your classpath
Just to add to the above,
com.rabbitmq.client.ShutdownListener
was introduced in RabbitMQ client since v. 4.x. So look at the version of RabbitMQ libraries on your classpath
Thank you for your reply. I know that the problem is that there is a problem with the pulled jar package
Closing due to no activity.
I have such a problem When using Spring Cloud Bus to integrate Rabbit MQ and start bean'outputBindingLifecycle', java.lang.ClassNotFoundException: com.rabbitmq.client.ShutdownListener is thrown `Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. 2021-05-24 19:28:16.109 ERROR 13216 --- [ main] o.s.boot.SpringApplication : Application run failed
org.springframework.context.ApplicationContextException: Failed to start bean 'outputBindingLifecycle'; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Failed to process import candidates for configuration class [org.springframework.cloud.stream.binder.rabbit.config.RabbitServiceAutoConfiguration]; nested exception is java.lang.IllegalStateException: Failed to introspect annotated methods on class org.springframework.cloud.stream.binder.rabbit.config.RabbitMessageChannelBinderConfiguration at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:184) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:52) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:356) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:157) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:121) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:885) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.finishRefresh(ServletWebServerApplicationContext.java:161) ~[spring-boot-2.0.4.RELEASE.jar:2.0.4.RELEASE] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:553) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:140) ~[spring-boot-2.0.4.RELEASE.jar:2.0.4.RELEASE] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:762) [spring-boot-2.0.4.RELEASE.jar:2.0.4.RELEASE] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:398) [spring-boot-2.0.4.RELEASE.jar:2.0.4.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:330) [spring-boot-2.0.4.RELEASE.jar:2.0.4.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1258) [spring-boot-2.0.4.RELEASE.jar:2.0.4.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1246) [spring-boot-2.0.4.RELEASE.jar:2.0.4.RELEASE] at org.xy.ConfigServerApplication.main(ConfigServerApplication.java:14) [classes/:na] Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to process import candidates for configuration class [org.springframework.cloud.stream.binder.rabbit.config.RabbitServiceAutoConfiguration]; nested exception is java.lang.IllegalStateException: Failed to introspect annotated methods on class org.springframework.cloud.stream.binder.rabbit.config.RabbitMessageChannelBinderConfiguration at org.springframework.context.annotation.ConfigurationClassParser.processImports(ConfigurationClassParser.java:646) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.annotation.ConfigurationClassParser.doProcessConfigurationClass(ConfigurationClassParser.java:303) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:245) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:202) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:170) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:316) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:233) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:271) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:91) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:694) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:532) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:762) [spring-boot-2.0.4.RELEASE.jar:2.0.4.RELEASE] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:398) [spring-boot-2.0.4.RELEASE.jar:2.0.4.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:330) [spring-boot-2.0.4.RELEASE.jar:2.0.4.RELEASE] at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:137) ~[spring-boot-2.0.4.RELEASE.jar:2.0.4.RELEASE] at org.springframework.cloud.stream.binder.DefaultBinderFactory.getBinderInstance(DefaultBinderFactory.java:214) ~[spring-cloud-stream-2.0.3.RELEASE.jar:2.0.3.RELEASE] at org.springframework.cloud.stream.binder.DefaultBinderFactory.getBinder(DefaultBinderFactory.java:143) ~[spring-cloud-stream-2.0.3.RELEASE.jar:2.0.3.RELEASE] at org.springframework.cloud.stream.binding.BindingService.getBinder(BindingService.java:308) ~[spring-cloud-stream-2.0.3.RELEASE.jar:2.0.3.RELEASE] at org.springframework.cloud.stream.binding.BindingService.bindProducer(BindingService.java:208) ~[spring-cloud-stream-2.0.3.RELEASE.jar:2.0.3.RELEASE] at org.springframework.cloud.stream.binding.BindableProxyFactory.bindOutputs(BindableProxyFactory.java:252) ~[spring-cloud-stream-2.0.3.RELEASE.jar:2.0.3.RELEASE] at org.springframework.cloud.stream.binding.OutputBindingLifecycle.doStartWithBindable(OutputBindingLifecycle.java:46) ~[spring-cloud-stream-2.0.3.RELEASE.jar:2.0.3.RELEASE] at org.springframework.cloud.stream.binding.AbstractBindingLifecycle$$Lambda$614/2040500590.accept(Unknown Source) ~[na:na] at java.util.Iterator.forEachRemaining(Unknown Source) ~[na:1.8.0_51] at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Unknown Source) ~[na:1.8.0_51] at java.util.stream.ReferencePipeline$Head.forEach(Unknown Source) ~[na:1.8.0_51] at org.springframework.cloud.stream.binding.AbstractBindingLifecycle.start(AbstractBindingLifecycle.java:47) ~[spring-cloud-stream-2.0.3.RELEASE.jar:2.0.3.RELEASE] at org.springframework.cloud.stream.binding.OutputBindingLifecycle.start(OutputBindingLifecycle.java:29) ~[spring-cloud-stream-2.0.3.RELEASE.jar:2.0.3.RELEASE] at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:181) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] ... 14 common frames omitted Caused by: java.lang.IllegalStateException: Failed to introspect annotated methods on class org.springframework.cloud.stream.binder.rabbit.config.RabbitMessageChannelBinderConfiguration at org.springframework.core.type.StandardAnnotationMetadata.getAnnotatedMethods(StandardAnnotationMetadata.java:169) ~[spring-core-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.annotation.ConfigurationClassParser.retrieveBeanMethodMetadata(ConfigurationClassParser.java:393) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.annotation.ConfigurationClassParser.doProcessConfigurationClass(ConfigurationClassParser.java:318) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:245) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] at org.springframework.context.annotation.ConfigurationClassParser.processImports(ConfigurationClassParser.java:636) ~[spring-context-5.0.8.RELEASE.jar:5.0.8.RELEASE] ... 41 common frames omitted Caused by: java.lang.NoClassDefFoundError: com/rabbitmq/client/ShutdownListener at java.lang.ClassLoader.defineClass1(Native Method) ~[na:1.8.0_51] at java.lang.ClassLoader.defineClass(Unknown Source) ~[na:1.8.0_51] at java.security.SecureClassLoader.defineClass(Unknown Source) ~[na:1.8.0_51] at java.net.URLClassLoader.defineClass(Unknown Source) ~[na:1.8.0_51] at java.net.URLClassLoader.access$100(Unknown Source) ~[na:1.8.0_51] at java.net.URLClassLoader$1.run(Unknown Source) ~[na:1.8.0_51] at java.net.URLClassLoader$1.run(Unknown Source) ~[na:1.8.0_51] at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_51] at java.net.URLClassLoader.findClass(Unknown Source) ~[na:1.8.0_51] at java.lang.ClassLoader.loadClass(Unknown Source) ~[na:1.8.0_51] at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) ~[na:1.8.0_51] at java.lang.ClassLoader.loadClass(Unknown Source) ~[na:1.8.0_51] at java.lang.Class.getDeclaredMethods0(Native Method) ~[na:1.8.0_51] at java.lang.Class.privateGetDeclaredMethods(Unknown Source) ~[na:1.8.0_51] at java.lang.Class.getDeclaredMethods(Unknown Source) ~[na:1.8.0_51] at org.springframework.core.type.StandardAnnotationMetadata.getAnnotatedMethods(StandardAnnotationMetadata.java:158) ~[spring-core-5.0.8.RELEASE.jar:5.0.8.RELEASE] ... 45 common frames omitted Caused by: java.lang.ClassNotFoundException: com.rabbitmq.client.ShutdownListener at java.net.URLClassLoader.findClass(Unknown Source) ~[na:1.8.0_51] at java.lang.ClassLoader.loadClass(Unknown Source) ~[na:1.8.0_51] at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) ~[na:1.8.0_51] at java.lang.ClassLoader.loadClass(Unknown Source) ~[na:1.8.0_51] ... 61 common frames omitted`