从 JACKSON 1.9->2.1 升级输出大量调试日志

Upgrading from JACKSON 1.9->2.1 outputting a lot of debug logs

最近将我们的大型项目从 jackson 1.9 升级到 2.1。一切正常,除了当你 运行 一些测试时,控制台中输出了大量调试代码。这破坏了需要 0 调试输出的记录器测试。我环顾四周,似乎找不到解决方案或任何其他有类似问题的人。

前几行:

[DEBUG] 属性 com.sun.xml.internal.bind.XmlAccessorFactoryis 未激活。使用 JAXB 的实现

[DEBUG] 使用受保护的优化访问器 java.util.List com.sun.research.ws.wadl.Request.doc

[DEBUG] 使用受保护的优化访问器 java.util.List com.sun.research.ws.wadl.Doc.content

[DEBUG] 使用受保护的优化访问器 java.lang.String com.sun.research.ws.wadl.Doc.title

有什么想法吗?

此致

这听起来像是 GlassFish 或 Jersey 可能正在制作的东西。 Jackson 不会输出这样的调试信息;它不使用记录器或在 System.err 或 System.out.

中打印任何内容

解决方案在 logback.xml 文件中,该文件定义了我们的日志记录级别。 jackson 的升级版本使用不同的包位置 com.sun.xml,所以必须更改:

<logger name="com.sun.xml.bind" level="${log.level:-info}" />

至:

<logger name="com.sun.xml.internal.bind" level="${log.level:-info}" />