0

Окружающая среда Детали:IBM Worklight 6.2 несколько привязок SLF4J

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

Однако в моем случае я не добавляю библиотеку.

Чтобы проверить конфликт, я удалил worklight-jee-library.jar из usr \ shared \ resources \ myapp, и он отлично работает.

Но это не решение. Пожалуйста, предложите способ решения.

ответ

0

Кажется, что вы включили ярлык worklight-jee-library.jar в свою WAR и в папку общих ресурсов. Поэтому либо удалите его из своей WAR, либо папки общих ресурсов. Это решение.

1

Остановите доступ к серверу Liberty Server, удалите каталог рабочей области и перезапустите сервер Liberty с параметром --clean. Профиль Liberty использует рабочую область как кеш, и у вас могут быть конфликты, если в одно время был загружен класс, который не совпадает с текущим. И выглядит в соответствии с входом в кеш, который включен в файл warlight-jee-library. Если это так, вы должны удалить его с войны. Библиотека worklight-jee должна использоваться как разделяемая библиотека и не должна быть упакована в военный файл.

Смежные вопросы