EasyStream 和 slf4j API 问题

EasyStream and slf4j API Issue

我需要在 sourceforge 站点上提供 EasyStream,并在我的应用程序中添加了依赖项。我的 SLF4J-API 以前工作得很好,但现在出现了分歧。我使用代码片段的方式是:

private final Map<?, ?> parentContext;
 MDC.setContextMap(parentContext);

出于某种原因,我现在收到编译时错误消息:

The method setContextMap(Map<String,String>) in the type MDC is not applicable for the argument Map<Capture#5of-?,Capture#6of-?>

请建议我如何解决这个错误。

我猜 EasyStream 依赖的 SLF4J 版本与您正在使用的版本不同。对一个人的类路径有多个相同版本的依赖会导致各种奇怪的问题。根据您使用的依赖管理系统,您可能需要告诉它排除子 slf4j-api 依赖或覆盖它。例如,在 Maven 中,我会使用 <dependencyManagement> 系统来强制所有依赖项使用相同版本的 slf4j-api。也许如果您使用有关正在使用的依赖项管理系统的更多详细信息来编辑您的问题,您可以获得更具体的答案,以及有关如何检查和防止将来出现此类问题的详细信息。