IDEA在用Maven引入依赖时,对于log4j与slf4j的依赖冲突的解决办法

今天在用maven引入依赖时,在程序运行时曝出了log4j与slf4j的依赖冲突导致错误。具体可以看自己的错误中应该会有bind等关键信息,比如log4j-over-slf4j与slf4j-log4j12的冲突,可能还会出现关于这两个依赖的其他的错误信息,话不多说,这里总结一下关于这类问题的解决办法。

1、在引入log4j-over-slf4j依赖的版本时,尽可能保证与引入slf4j相关依赖的版本保持一致,比如log4j-over-slf4j的版本是1.6.6的版本,所以引入的slf4j的版本也最好是1.6.6版本,当然也可以选择1.7版本相对高一点的也是可以的,但是不要选择1.5.x 的版本,否则就会出现依赖冲突,运行时就会报,当前版本是1.6 但是被1.5版本的依赖占用的错误。

2、出现错误时可以把maven依赖中引进来的1.5版本关于slf4j的jar包删除,具体怎么删除,可以进入 左上角 file ---》Project structure---》module -----》dependcies  找到关于slf4j 中的低版本比如1.5.x,删除掉,然后在引入log4j-over-slf4j与slf4j-api版本一致的依赖。

总的来说,这两个关于日志信息冲突非常常见,也很容易就出现,所以在引入其他依赖时也可能会把这些依赖同时引进来,出现问题时,找这两个依赖的版本,优先做法保证两个是相同的版本,在是把其中的低版本的 依赖删除,例如1.5.x的,问题很简单就解决了,这样也是自己的一次小的总结吧,希望可以帮助同样遇到困难的小伙伴,自己目前也在学习当中,如果遇到这个问题无法解决可以加我QQ:2413096787,一起共同进步呦。

你可能感兴趣的:(Idea工具)