Compile ERROR: The method error(String, Object, Object) in the type Logger is not applicable for the arguments
Compile ERROR: The method error(String, Object, Object) in the type Logger is not applicable for the arguments
我继承了一个不在 Maven 中的项目,并且没有关于依赖项设置的文档。我收到很多与 slf4j 相关的错误。
例如,以下代码中的 _logger.error() 调用会生成此编译错误:"The method error(String, Object, Object) in the type Logger is not applicable for the arguments"。
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
//lines ommitted
Logger _logger;
//lines ommitted
_logger.error("getValueList|Error|valueId|{}|date|{}| current|{}|", _valueId, _date,_current);
我需要在 class 路径中包含哪些 slf4j jar 才能避免这种情况?请注意,我的 classpath 中已经包含了所有 slf4j 1.7.5 并且大多数日志记录语句都可以正常编译,但其他的则不能。我不确定如何解决这个问题。
更新 - 为清晰起见添加了额外的代码
参考这个link http://www.slf4j.org/apidocs/org/slf4j/Logger.html
根据文档,无法像您的代码那样在 logger.error 方法中包含 3 个参数。
涉及两个以上对象进行日志记录的唯一方法是将这些对象放在一个数组中并将其作为参数传递给 logger.error 方法
参考
无效错误(字符串格式,
对象...参数)
页面上的方法
已解决:我不小心将 slf4j-api-1.6.6.jar 包含在类路径中。那是被链接而不是 slf4j-api-1.7.5.jar。一旦我删除了 slf4j-api-1.6.6.jar slf44 编译错误就消失了。
感谢您的帮助。
我继承了一个不在 Maven 中的项目,并且没有关于依赖项设置的文档。我收到很多与 slf4j 相关的错误。
例如,以下代码中的 _logger.error() 调用会生成此编译错误:"The method error(String, Object, Object) in the type Logger is not applicable for the arguments"。
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
//lines ommitted
Logger _logger;
//lines ommitted
_logger.error("getValueList|Error|valueId|{}|date|{}| current|{}|", _valueId, _date,_current);
我需要在 class 路径中包含哪些 slf4j jar 才能避免这种情况?请注意,我的 classpath 中已经包含了所有 slf4j 1.7.5 并且大多数日志记录语句都可以正常编译,但其他的则不能。我不确定如何解决这个问题。
更新 - 为清晰起见添加了额外的代码
参考这个link http://www.slf4j.org/apidocs/org/slf4j/Logger.html 根据文档,无法像您的代码那样在 logger.error 方法中包含 3 个参数。 涉及两个以上对象进行日志记录的唯一方法是将这些对象放在一个数组中并将其作为参数传递给 logger.error 方法
参考
无效错误(字符串格式, 对象...参数)
页面上的方法
已解决:我不小心将 slf4j-api-1.6.6.jar 包含在类路径中。那是被链接而不是 slf4j-api-1.7.5.jar。一旦我删除了 slf4j-api-1.6.6.jar slf44 编译错误就消失了。
感谢您的帮助。