开发常见错误之 : Detected both log4j-over-slf4j.jar AND slf4j-log4j12.jar
SLF4J: Detected both log4j-over-slf4j.jar AND slf4j-log4j12.jar on the class path, preempting StackOverflowError.
SLF4J: See also http://www.slf4j.org/codes.html#log4jDelegationLoop for more details.
Exception in thread "main" Java.lang.ExceptionInInitializerError
at org.apache.log4j.LogManager.getLogger(LogManager.java:44)
at org.slf4j.impl.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:66)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:277)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:288)
....
Caused by: java.lang.IllegalStateException: Detected both log4j-over-slf4j.jar AND slf4j-log4j12.jar on the class path, preempting StackOverflowError. See also http://www.slf4j.org/codes.html#log4jDelegationLoop for more details.
at org.apache.log4j.Log4jLoggerFactory.<clinit>(Log4jLoggerFactory.java:51)
... 11 more
原因是引用了两个关于log4j的jar,造成死循环
log4j-over-slf4j-1.7.7.jar
slf4j-log4j12-1.7.7.jar
但只引用slf4j-log4j12-1.7.7.jar会提示org.apache.log4j.Level这个class找不到
要使用log4j记录日志,其实只用引用log4j-over-slf4j-1.7.7.jar就可以了,一般在maven中引入其他依赖时,可以排除对log4j的引用:
<exclusion>
<groupid>log4j</groupid>
<artifactId>log4j</artifactId>
</exclusion>
<exclusion>
<groupid>org.slf4j</groupid>
<artifactId>elf4j-log4j12</artifactId>
</exclusion>
开发常见错误之 : Detected both log4j-over-slf4j.jar AND slf4j-log4j12.jar的更多相关文章
- WCF分布式开发常见错误解决(1):An error occurred while attempting to find services at...添加服务引用出错
		WCF分布式开发常见错误解决(1):An error occurred while attempting to find services at...添加服务引用出错 当我们在客户端添 ... 
- Java避坑宝典《Java业务开发常见错误100例》上线了
		写这个专栏的缘起 之前我写过一篇博客:<朱晔的互联网架构实践心得S2E2:写业务代码最容易掉的10种坑>,引起的关注还是挺多的.后来和极客时间的编辑一拍即合决定以这个为题写一个专栏.其实所 ... 
- 开发常见错误解决(6)WSE3.0未处理的WebException,未处理的Web异常,基础连接以及关闭...
		开发常见错误解决(6)WSE3.0未处理的WebException,未处理的Web异常,基础连接以及关闭. 我们在调试WSE服务端服务的时候会抛出,未处理的Web异常,基础连接以及关闭的异常信息.如图 ... 
- iOS开发 常见错误
		一.NSAppTransportSecurity 错误提示:NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL ... 
- Android开发常见错误及技巧
		1.无法使用网络:Permission denied(maybe missing internet permission) 在AndroidMainifest.xml中增加允许使用网络选项(在< ... 
- Android开发常见错误类型一览表
		这是我的第一个博客,我会一直添加我在Android开发中遇到的错误,用来记录我开发中踩过的那些坑 ------------------------分割线------------------------ ... 
- Android开发常见错误汇总
		[错误信息] [2011-01-19 16:39:10 - ApiDemos] WARNING: Application does not specify an API level requireme ... 
- iOS开发常见错误解决方法
		1.出现下面的错误: StoryboardApp[8593:207] Failed to instantiate the default view controller for UIMainStory ... 
- iOS开发——常见错误——使用MJRefresh返回上一个界面蹦掉的情况
		最近在使用MJRefresh框架时发现了一个bug 下面是我的源代码 前一个界面 -(void)tableView:(UITableView *)tableView didSelectRowAtInd ... 
随机推荐
- log4net按照不同的【LEVEL】级别输出到不同文件
			Log4net按照不同级别写入多个日志文件 2012-02-08 15:06 by Fred-Xu, ... 阅读, ... 评论, 收藏, 编辑 在一个Web应用项目中,我使用了Fluent NHi ... 
- Fedora ssh服务,防火墙服务设置
			Fedora26 ssh设置 ssh:connection to host 127,0.0.1 port22: Connection refused 首先安装openssh-server yu ... 
- UNIX环境编程学习笔记(14)——文件I/O之临时文件
			lienhua342014-10-01 ISO C 标准 I/O 库提供了个两个函数 tmpnam 和 tmpfile 以帮助创建临时文件, #include <stdio.h> char ... 
- Google语音识别API 使用方法
			官方位置:https://cloud.google.com/speech/ 
- PopupWindow错误:PopupWindow$1.onScrollChanged 出现 NullPointerException和PopupViewContainer.dispatchKeyEvent 出现 NullPointerException【转载】
			PopupWindow错误:PopupWindow$1.onScrollChanged 出现 NullPointerException和PopupViewContainer.dispatchKeyEv ... 
- python运行显示编码错误
			python中运行显示编码错误一般有2种原因: 编码与译码的方式不一致 在编写Python时,当使用中文输出或注释时运行脚本,会提示错误信息: SyntaxError: Non-ASCII chara ... 
- mysql 字符串转数据丢失精度,mysql转换丢失精度,mysql CAST 丢失精度
			mysql 字符串转数据丢失精度,mysql转换丢失精度,mysql CAST 丢失精度 =============================== ©Copyright 蕃薯耀 2017年9月1 ... 
- 【GIS】Cesium1.49编译
			1.npm install 2.npm install --save-dev gulp 3.gulp default 4.npm run build 5.npm start 遇到问题 1.gulp不好 ... 
- java的代理和动态代理简单测试
			什么叫代理与动态代理? 1.以买火车票多的生活实例说明. 因为天天调bug所以我没有时间去火车票,然后就给火车票代理商打电话订票,然后代理商就去火车站给我买票.就这么理解,需要我做的事情,代理商帮我办 ... 
- PHP代码审计笔记--文件包含漏洞
			有限制的本地文件包含: <?php include($_GET['file'].".php"); ?> %00截断: ?file=C://Windows//win.in ... 
