首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

jar包版本摩擦

2013-09-11 
jar包版本冲突启动一个新的应用,应用日志正常,apach日志也正常,但是访问应用失败,apach.log中有如下内容:

jar包版本冲突

启动一个新的应用,应用日志正常,apach日志也正常,但是访问应用失败,apach.log中有如下内容:

写道2010-11-24 16:19:08,422 [] ERROR [/].[default] - Servlet.service() for servlet default threw exception
java.lang.NoSuchMethodError: org.slf4j.MDC.getCopyOfContextMap()Ljava/util/Map;

我第一反映是去应用中找这个类和这个方法,而他的确是存在的,然后就懵了。几个有经验的同事帮我看了之后,确定问题肯定是jar包版本冲突了,最后真正调用的jar包并不是引用中实际需要的版本。

?

目标:找出jboss启动的时候到底load哪些class,并且这些class来源是哪里

命令:-verbose:class

这个命令会把所有load的class信息输出在控制台,但是我的应用输出实在是太多了,根本没法看,而且输到一般窗口就卡死不动了。

最后我借助搜索工具,找出了我系统里所有这类jar包,然后手动删除觉得可能会影响的,哎,发现系统里高版本、低版本的都有,超级多。

最后问题是解决了,但是还是不知道到底引用的是哪个jar出的问题,所以输出下load class其实还是必须的。恩,晚上好好找找可以输出到指定文件的方法!


我的异常网推荐解决方案:Servlet.service() for servlet default threw exception,http://www.myexception.cn/eclipse/181756.html

热点排行