JAVA项目中日志框架依赖冲突处理

JAVA日志API对项目的重要性不言而喻,由于历史原因,由此产生了很多日志标准,在项目构建时常常会遇到历史遗留问题,或者框架冲突问题。
可以将日志系统的Jar包分为3个部分:

标准:JUL,Slf4j(用于统一具体实现框架所提供的接口)
实现:log4j,logback(具体实现)
桥接器:如slf4j-jcl-1.7.13.jar(将slf4j标准的代码兼容到jcl标准去,该类包用于解决历史遗留问题,让标准兼容)

在项目合并时,出现依赖冲突的原因:
1.使用以上标准来构建实现类时,如果项目中存在多个实现依赖,(由于在实现包的编写标准中,构建logger对象的核心类类名相同导致依赖冲突),所以需要在Maven中解决依赖冲突,只在项目中保留一个实现类。
2.在生成logger对象时,项目中存在未解决历史遗留问题而导入的桥接器包,然后同时包含(A标准兼容B标准,B标准兼容A标准)的Jar包,从而产生代码兼容处理阶段,日志标准重定向的死循环,导致日志系统的失效。(在Maven中排除多余的依赖打破循环即可解决)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值