java.lang.IllegalAccessError:试图从org.slf4j.LoggerFactory类访问字段org.slf4j.impl.StaticLoggerBinder.SINGLETON
我在运行GWT应用程序时遇到此错误 我的类路径中有这些jar文件:java.lang.IllegalAccessError:试图从org.slf4j.LoggerFactory类访问字段org.slf4j.impl.StaticLoggerBinder.SINGLETON,java,gwt,Java,Gwt,我在运行GWT应用程序时遇到此错误 我的类路径中有这些jar文件:slf4j api&slf4j-log4j12 知道原因是什么吗?这个问题是由于slf4j-log4j12 jar发生了变化。从版本1.5.6开始,它不允许访问字段org.slf4j.impl.StaticLoggerBinder.SINGLETON 要解决此问题,请对slf4j api和slf4j-log4j12使用最新的JAR(或至少1.5.6版以后的版本) <dependency> <groupId
slf4j api
&slf4j-log4j12
知道原因是什么吗?这个问题是由于slf4j-log4j12 jar发生了变化。从版本1.5.6开始,它不允许访问字段org.slf4j.impl.StaticLoggerBinder.SINGLETON 要解决此问题,请对slf4j api和slf4j-log4j12使用最新的JAR(或至少1.5.6版以后的版本)
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.6</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.5.6</version>
</dependency>
org.slf4j
slf4j api
1.5.6
org.slf4j
slf4j-log4j12
1.5.6
终于在我的SpringBoot应用程序中解决了这个问题。如果更新版本没有帮助,这可能会有所帮助。有时,其他库可能会带来此依赖项的不同版本。以下是步骤:
logbackclassic
和log4j-over-slf4j
导致了这个问题。他们在springbootstarterweb
pom.xml
中为提供此问题的库使用该依赖项中的
。在我的例子中,它看起来是这样的:
org.springframework.boot
我一直被SLF4J向后兼容性问题困扰,以至于我尖叫不已。多么可笑的API啊。我永远不会故意使用SLF4J。我讨厌它。也就是说,谢谢你的回答@我也是。我在SLF4J问题上花了太多时间。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<artifactId>logback-classic</artifactId>
<groupId>ch.qos.logback</groupId>
</exclusion>
<exclusion>
<artifactId>log4j-over-slf4j</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
</dependency>