NoClassDefFoundError: org/slf4j/LoggerFactory和NoClassDefFoundError: org/apache/log4j/LogManager解决方法
1.如果运行程序出现错误:“Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory”,这是因为项目缺少slf4j-api.jar和slf4j-log4j12.jar这两个jar包导致的错误。
2.如果运行程序出现错误:“java.lang.NoClassDefFoundError: org/apache/log4j/LogManager”,这是因为项目缺少log4j.jar这个jar包
3.错误:“Exception in thread "main" java.lang.NoSuchMethodError: org.slf4j.MDC.getCopyOfContextMap()Ljava/util/Map”,这是因为jar包版本冲突造成的。
slf4j-log4j12.jar版本信息:
Manifest-Version: 1.0 Archiver-Version: Plexus Archiver Created-By: Apache Maven Built-By: ceki Build-Jdk: 1.5.0_06 Bundle-Description: The slf4j log4j-12 binding Bundle-Version: 1.3.1 Implementation-Version: 1.4.2 Implementation-Title: slf4j-log4j12 Bundle-ManifestVersion: 2 Bundle-SymbolicName: slf4j.log4j12 Bundle-Name: slf4j-log4j12 Bundle-Vendor: SLF4J.ORG Export-Package: org.slf4j.impl;version=1.3.1 Import-Package: org.slf4j;version="[1.3,1.4)", org.slf4j.spi;version=" [1.3,1.4)", org.slf4j.helpers;version="[1.3,1.4)", org.apache.log4j
slf4j-api.jar版本信息:
Manifest-Version: 1.0 Archiver-Version: Plexus Archiver Created-By: Apache Maven Built-By: ceki Build-Jdk: 1.5.0_06 Bundle-Description: The slf4j API Bundle-Version: 1.3.1 Implementation-Version: 1.4.2 Implementation-Title: slf4j-api Bundle-ManifestVersion: 2 Bundle-SymbolicName: slf4j.api Bundle-Name: slf4j-api Bundle-Vendor: SLF4J.ORG Export-Package: org.slf4j;version=1.3.1, org.slf4j.spi;version=1.3.1, org.slf4j.helpers;version=1.3.1 Import-Package: org.slf4j.impl;version="[1.3,1.4)"
log4j.jar版本信息:
Manifest-Version: 1.0 Ant-Version: Apache Ant 1.6.5 Created-By: 1.3.1_18-b01 (Sun Microsystems Inc.) Name: org/apache/log4j/ Implementation-Title: log4j Implementation-Version: 1.2.14 Implementation-Vendor: "Apache Software Foundation"
后来将log4j.jar版本从上面的1.2.14换到1.2.11
Manifest-Version: 1.0 Ant-Version: Apache Ant 1.6.4 Created-By: 1.4.2_06-b03 (Sun Microsystems Inc.) Name: org/apache/log4j/ Implementation-Title: log4j Implementation-Version: 1.2.11 Implementation-Vendor: "Apache Software Foundation"
就不再出现“Exception in thread "main" java.lang.NoSuchMethodError: org.slf4j.MDC.getCopyOfContextMap()Ljava/util/Map”错误了。
4.ActiveMQ错误:Wire format negociation timeout: peer did not send his wire format.
我出现这样的错误主要是因为ActiveMQ与slf4j的版本有冲突,我原先使用的是以前一种用的slf4j-1.4。后来看apache-activemq-5.5.1\lib目录下有slf4j-api-1.5.11.jar、slf4j-log4j12-1.5.11.jar和log4j-1.2.14.jar。我想这几个jar应该是和ActiveMQ匹配的,就使用了这三个jar,最终错误解决。
相关推荐
NoClassDefFoundError: org/slf4j/LoggerFactory解决方案,需要添加的三个jar包都在,slf4j-api-1.5.2,slf4j-log4j12-1.5.2,log4j-1.2.12
NoClassDefFoundError: Failed resolution of: Lorg/slf4j/LoggerFactory 缺少此依赖包 该压缩包中包含以下内容: 1、jcl-over-slf4j-1.7.21.jar 2、jcl-over-slf4j-1.7.21-sources.jar 3、jul-to-slf4j-1.7.21.jar ...
1.如果运行程序出现错误:“Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory”,这是因为项目缺少slf4j-api.jar和slf4j-log4j12.jar这两个jar包导致的错误。 2.如果运行程序...
Spring Boot提供了对多种日志框架的支持,如Logback、Log4j2等,同时也内置了对Java Util Logging的默认支持。本篇文章将详细探讨如何在Spring Boot项目中配置日志输出。 首先,我们需要理解Spring Boot的日志层次...
1.如果运行程序出现错误:“Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory”,这是因为项目缺少slf4j-api.jar和slf4j-log4j12.jar这两个jar包导致的错误。 本附件中 包含了...
异常四. Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory 缺少 slf4j-api-1.7.6.jar 包
4. 因为NoClassDefFoundError是java.lang.LinkageError的一个子类,所以可能由于程序依赖的原生的类库不可用而导致 5. 检查日志文件中是否有java.lang.ExceptionInInitializerError这样的错误 与...
第二个报错:Exception in thread "main" java.lang.NoClassDefFoundError: org.slf4j.LoggerFactory。该错误发生在程序的main线程中,表明Java.lang包中找不到LoggerFactory类。通常这是由于缺少了必要的jar包导入...