我正在尝试将logback classic库从1.2.3版本升级到1.2.8版本。补丁注释说,所有与DB相关的代码都已删除,因此新版本中不再存在主DBAppender类https://logback.qos.ch/news.html.有人找到某种升级指南或知道解决方案吗?
请参阅https://logback.qos.ch/news.html.
2022-04-20,logback.db版本1.2.11.1 的发布
从logback版本1.2.8起,DBAppender不再附带logback。但是,DBAppender for logback classic在以下Maven坐标:
ch.qos.logback.db:logback classic db:1.2.1.1
以及下的logback访问
ch.qos.logback.db:logback访问数据库:1.2.11.1
这两个工件都需要ch.qos.logback.db:logback核心数据库:1.2.11.1,将被拉入由Maven的传递性规则自动执行。
在将spring升级到2.6.3之后,我也在想同样的事情,该版本通过spring-boot-starter日志依赖关系引入logback版本1.2.8+。
根据logback的网站:https://logback.qos.ch/news.html在版本1.2.8中:;2( 我们已经删除了项目中所有与数据库(JDBC(相关的代码,没有替换">
我的logback xml配置文件中有一个自定义的DB Appender,应用程序无法构建,出现以下错误:Could not create an Appender of type [ch.qos.logback.classic.db.DBAppender]. ch.qos.logback.core.util.DynamicClassLoadingException: Failed to instantiate type ch.qos.logback.classic.db.DBAppender
在做了一些研究后,我在logback积压中发现了一张罚单,其中包含一个记录如何进行的请求。https://jira.qos.ch/browse/LOGBACK-1609
显然,DB appender是由于存在漏洞而被删除的。
根据开发商的说法:;源代码仍然存在。在这个问题得到解决之前,您可以从标记1.2.8中获取代码并重新生成。DBAppender问题比人们想象的要复杂一些。正如你所能想象的,这些天我们有很多事情要做,但我们最终会做到的">
因此,这听起来像是在他们进行修复时删除了代码,最终会重新添加支持。不过我不会指望一个快速的解决办法。
作为一种解决方法,我已经将logback版本固定在我的项目gradle文件中,这样我就可以使用最新版本的spring以及仍然支持DB appender类的logback的最新版本。
以下是我使用的语法:
ext['logback.version'] = '1.2.7'