SLF4J:Class 路径在 WSO2 IS 启动期间包含多个 SLF4J 绑定
SLF4J: Class path contains multiple SLF4J bindings during WSO2 IS startup
我的一个 WSO2 IS(身份服务器)由于物理主机错误而崩溃,当我想恢复 IS 服务时,它只是挂起并且不会在这些警告消息后立即启动:
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [bundleresource://539.fwk120694604:1/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/lib64/wso2/wso2is/5.6.0/repository/deployment/server/webapps/api%23identity%23entitlement/WEB-INF/lib/slf4j-simple-1.6.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
除了 IS 进程挂起,也没有生成日志,所以根据警告消息,WSO2 IS 有冲突的日志 classes,但我找不到这个 class 去向:
bundleresource://539.fwk120694604:1/org/slf4j/impl/StaticLoggerBinder.class
我当前的 WSO2 IS 版本是 5.6.0,由于某些限制,我无法升级版本,我认为版本控制不是这里的问题。
我在整个互联网上进行了搜索,但主要涉及编辑 pom / maven 之类的东西,但 WSO2 IS 应该是现成的产品吧?好吧,所以到现在我还是找不到任何解决办法。
哪位好心人可以帮我解决这个问题?
谢谢。
这在 WSO2IS 中作为警告抛出
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [bundleresource://540.fwk1316864772:1/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/home/maneesha/WSO2/Whosebug/wso2is-5.6.0/wso2is-5.6.0/repository/deployment/server/webapps/api%23identity%23entitlement/WEB-INF/lib/slf4j-simple-1.6.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
发生这种情况是因为SLF4J
jar 文件在
<IS-HOME>/repository/components/plugins/slf4j.log4j12_1.6.1.jar
<IS-HOME>/repository/deployment/server/webapps/api#identity#entitlement/WEB-INF/lib/slf4j-simple-1.6.1.jar
两者都包含 StaticLoggerBinder.class
这可以在构建 api#identity#entitlement.war
文件时使用依赖管理来避免。
如您所见,没有提供范围,可以使用以下依赖管理使 SLF4J 库不捆绑到 api#identity#entitlement.war
文件
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<scope>provided</scope>
</dependency>
我的一个 WSO2 IS(身份服务器)由于物理主机错误而崩溃,当我想恢复 IS 服务时,它只是挂起并且不会在这些警告消息后立即启动:
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [bundleresource://539.fwk120694604:1/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/lib64/wso2/wso2is/5.6.0/repository/deployment/server/webapps/api%23identity%23entitlement/WEB-INF/lib/slf4j-simple-1.6.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
除了 IS 进程挂起,也没有生成日志,所以根据警告消息,WSO2 IS 有冲突的日志 classes,但我找不到这个 class 去向:
bundleresource://539.fwk120694604:1/org/slf4j/impl/StaticLoggerBinder.class
我当前的 WSO2 IS 版本是 5.6.0,由于某些限制,我无法升级版本,我认为版本控制不是这里的问题。
我在整个互联网上进行了搜索,但主要涉及编辑 pom / maven 之类的东西,但 WSO2 IS 应该是现成的产品吧?好吧,所以到现在我还是找不到任何解决办法。
哪位好心人可以帮我解决这个问题?
谢谢。
这在 WSO2IS 中作为警告抛出
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [bundleresource://540.fwk1316864772:1/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/home/maneesha/WSO2/Whosebug/wso2is-5.6.0/wso2is-5.6.0/repository/deployment/server/webapps/api%23identity%23entitlement/WEB-INF/lib/slf4j-simple-1.6.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
发生这种情况是因为SLF4J
jar 文件在
<IS-HOME>/repository/components/plugins/slf4j.log4j12_1.6.1.jar
<IS-HOME>/repository/deployment/server/webapps/api#identity#entitlement/WEB-INF/lib/slf4j-simple-1.6.1.jar
两者都包含 StaticLoggerBinder.class
这可以在构建 api#identity#entitlement.war
文件时使用依赖管理来避免。
如您所见,没有提供范围,可以使用以下依赖管理使 SLF4J 库不捆绑到 api#identity#entitlement.war
文件
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<scope>provided</scope>
</dependency>