【发布时间】:2018-04-01 00:03:23
【问题描述】:
我正在开发 jira 插件。当我尝试部署它时,我收到一个错误:
在 URL [bundle://205.0:1/com/softwareplant/tool/service/UserService.class] 中创建名称为“userService”的 bean 时出错:通过构造函数实例化 bean 失败;嵌套异常是 java.lang.LinkageError:加载程序约束违规:解析方法“org.slf4j.impl.StaticLoggerBinder.getLoggerFactory()Lorg/slf4j/ILoggerFactory;”时当前类 org/slf4j/LoggerFactory 的类加载器(org/apache/felix/framework/BundleWiringImpl$BundleClassLoaderJava5 的实例)和方法定义的类加载器(org/apache/catalina/loader/WebappClassLoader 的实例)类,org/slf4j/impl/StaticLoggerBinder,对于签名中使用的类型 org/slf4j/ILoggerFactory 有不同的 Class 对象;嵌套异常是 org.springframework.beans.factory.BeanCreationException:
在项目中我使用了这样的依赖:
[0;37m[INFO] +- com.atlassian.jira:jira-core:jar:7.0.0:provided[0m
[0;37m[INFO] | +- org.slf4j:slf4j-log4j12:jar:1.7.9:provided[0m
[0;37m[INFO] | +- org.slf4j:jul-to-slf4j:jar:1.7.9:provided[0m
[0;37m[INFO] | +- org.slf4j:jcl-over-slf4j:jar:1.7.9:provided[0m
[0;37m[INFO] +- org.slf4j:slf4j-api:jar:1.7.25:compile[0m
希望您有解决方法的想法。谢谢你的帮助! 感谢您的帮助!
【问题讨论】:
-
如果
org.slf4j:slf4j-log4j12:jar:1.7.9是“提供”的,那么org.slf4j:slf4j-api:jar:1.7.9很可能也是“提供”的,所以不要将org.slf4j:slf4j-api:jar:1.7.25包含为“编译”依赖项。
标签: java maven jira classloader slf4j