环境详情:
IBM Worklight 6.2
Oracle java版“1.7.0_67”
Liberty 8.5.5.1
[err] SLF4J: Class path contains multiple SLF4J bindings.
[err] SLF4J: Found binding in [wsjar:file:/C:/IBM/WebSphere/Liberty/usr/servers/WorklightServer/workarea/org.eclipse.osgi/bundles/69/data/cache/com.ibm.ws.app.manager_
gen_a7f562a4-562a-4d33-8c23-98b948303abb/.cache/WEB-INF/lib/worklight-jee-library.jar!/org/slf4j/impl/StaticLoggerBinder.class]
[err] SLF4J: Found binding in [wsjar:file:/C:/IBM/WebSphere/Liberty/usr/shared/resources/myapp/lib/worklight-jee-library.jar!/org/slf4j/impl/StaticLoggerBinder.class]
[err] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
阅读链接。 Class path contains multiple SLF4J bindings
但是在我的情况下,我还没有添加库。
为了测试冲突,我从 usr \ shared \ resources \ myapp 中删除了worklight-jee-library.jar,它运行正常。
但这不是解决方案。请建议一种解决方法。
答案 0 :(得分:1)
停止Liberty Server,删除workarea目录并使用--clean选项重新启动Liberty Server。 Liberty概要文件使用工作区作为缓存,如果一次加载的类与当前类不同,则可能会发生冲突。 它根据缓存中的条目查看worklight-jee-library包含在war文件中。 如果是这种情况,你必须将它从战争中删除。 worklight-jee-library必须用作共享库,不得打包在war文件中。
答案 1 :(得分:0)
看来,您在WAR和共享资源文件夹中包含了worklight-jee-library.jar。因此要么从WAR或共享资源文件夹中删除它。这是解决方案。