在将 nacos 与 spring 进行整合时报如下的错误:
----------> Parent Classloader: java.net.URLClassLoader@cac736f JM.Log:ERROR Failed to get Slf4jLogger java.lang.NoClassDefFoundError: org/apache/logging/log4j/core/async/BlockingQueueFactory
翻看 nacos 源码并结合网上资料后发现是 log4j 的版本太低导致
将 log4j 版本由 2.5 改为 2.11.2 后启动项目不再报此错误。
但是又出现了新的问题,如下:
java.lang.NoSuchMethodError: com.lmax.disruptor.dsl.Disruptor.<init>(Lcom/lmax/disruptor/EventFactory;ILjava/util/concurrent/ThreadFactory;Lcom/lmax/disruptor/dsl/ProducerType;Lcom/lmax/disruptor/WaitStrategy;)V
在 pom.xml 文件中引入如下内容后解决此问题
<dependency>
<groupId>com.lmax</groupId>
<artifactId>disruptor</artifactId>
<version>3.4.2</version>
</dependency>