2016-06-10 50 views
0

我需要Sourceforge站点上的EasyStream,并在我的应用程序中添加了依赖项。我的SLF4J-API曾经工作得很好,但现在它有分歧。该办法正在使用的代码片段是: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-?> 

好心建议如何我能得到这个错误的旅程。

回答

0

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