gpt4 book ai didi

java - 使用 JAX-WS 时,我收到多个 SLF4J 绑定(bind)警告、启动处理程序错误和 NoSuchMethodError

转载 作者:行者123 更新时间:2023-12-01 15:37:48 26 4
gpt4 key购买 nike

我收到多个 SLF4J 绑定(bind)警告启动处理程序时出错NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker; Ljava/lang/String;ILjava/lang/String;Ljava/lang/Throwable;)V

一切都很好,一旦我开始使用 JAX-WS,所有这些业务就出现了。

我的一位同事遇到了同样的错误,但是一旦他删除了 jar(jcl-over-slf4j-1.5.8),现在对他来说就很好了,

但我尝试了同样的方法,但对我不起作用。

我尝试一一删除类路径中存在的以下 jar 1.slf4j-api-1.6.1.jar 2.slf4j-log4j12-1.6.1.jar 和 3.slf4j-simple-1.5.8。 jar但是没有效果。

当我在运行 Jetty 之前尝试 maven clean 时,它显示构建错误并且无法删除(xmlsec-1.4.4.jar),我手动删除了这个 jar 仍然没有在我的 .M2 存储库中构建任何内容。

这是控制台输出:

        2011-12-23 08:44:55.765:INFO::jetty-6.1.26
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/C:/My_workspace/my_portal /MyPortal/trunk/MyPortalWebApp/src/main/webapp/WEB-INF/lib/slf4j- log4j12-1.6.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/C:/My_workspace/MyPortal/trunk/MyPortalWebApp/src/main/webapp/WEB-INF/lib/slf4j-simple-1.5.8.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
2011-12-23 08:44:57.140:INFO:/MyPortalWebApp:Initializing Spring root WebApplicationContext
2011-12-23 08:44:57.140:WARN::failed org.mortbay.jetty.webapp.WebAppContext@c4fe76 {/MyPortalWebApp,C:\My_workspace\MyPortal\trunk\MyPortalWebApp\src\main\webapp}: java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;Ljava/lang/Throwable;)V
2011-12-23 08:44:57.140:WARN::Error starting handlers
java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;Ljava/lang/Throwable;)V
at org.apache.commons.logging.impl.SLF4JLocationAwareLog.info(SLF4JLocationAwareLog.java:159)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
at org.springframework.web.context.ContextLoaderListener.contextInitialized (ContextLoaderListener.java:47)
at org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:549)
at org.mortbay.jetty.servlet.Context.startContext(Context.java:136)
at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)
at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)
at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
at org.mortbay.jetty.Server.doStart(Server.java:224)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at runjettyrun.Bootstrap.main(Bootstrap.java:82)

请给我一些输入,我尝试了很多排列,但在运行 Jetty 时得到相同(如上所述)的输出。

最佳答案

Maven 自动包含不同版本的 slf4j-api 以及 slf4j-log4j 或 slf4j-logging。您可以通过键入以下内容了解它们被包含的原因:

mvn dependency:tree -Dincludes=org.slf4j

由于您使用的是 Jetty,因此 Jetty 也可能将容器的类路径包含在您的应用程序中。尝试将以下行(如果是 Jetty 6 或更早版本)添加到您的 web 应用程序的上下文文件中:

<Set name="parentLoaderPriority">false</Set>

它应该将容器 jar 和资源的优先级设置为低于 Web 应用程序的优先级。

关于java - 使用 JAX-WS 时,我收到多个 SLF4J 绑定(bind)警告、启动处理程序错误和 NoSuchMethodError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8612173/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com